版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
┊┊┊┊课程设计服务课程名称:系:专业:服务课程名称:系:专业:班级:学号:姓名:指导教师:课程设计周次:起始日期:至目录TOC\h\z\t"标题2,1"C语言课程设计成绩评定表 1C语言课程设计任务书 2程序基本框架结构图 3程序设计说明书 4源代码清单 5课程设计总结 20C语言课程设计-PAGE1-┊┊C语言课程设计成绩评定表┊┊班级学号姓名项目组项目组长项目组组员本人工作简介:在此次C语言课程设计中,我们小组的课题是编写职工信息管理系统。本人主要负责系统的职工信息查询与修改程序模块的编写。经过一系列的信息资料查询和同学的帮助终于顺利完成组长分布的任务要求。组长评语:该组员很守纪律,无迟到早退和旷课情况。起先对于书上的一些基本概念记得不是很牢固,但是后来积极进取,快速掌握相关知识。组内表现活跃,勤于善问,顺利完成下达任务。成绩评定标准ABCDE理论基础很好好比较好一般不好报告完成情况很好好比较好一般不好纪律表现很好好比较好一般不好程序创意很好好比较好一般不好所选模块完成情况很好好一般较差不好所选算法难易程度复杂比较复杂一般简单很简单程序可操作性很好好一般较差不好答辩表现很好好一般较差不好最后成绩优秀A>=5B<=3C<=0D=0E=0良好A>=3B<=4C<=1D=0E=0中等A>=1B>=2C>=4D<=1E=0及格A=0B=0C<=4D>=4不及格A=0B=0C=0D<=4E>=4负责指导教师:(签名)指导教师:(签名)
C语言课程设计任务书一、设计目的通过本次课程设计使学生进一步加深对C语言课程内容的理解,初步掌握一般应用程序的开发方法和步骤,进一步了解与掌握C语言的编程方法和技巧,提高学生用C语言解决实际问题的能力。二、设计要求1、认真查阅参考书、资料 2、遵守课程设计时间安排3、按时上机,认真调试程序 4、认真完成课程设计报告三、课设报告装订内容及顺序1、课程设计封皮 2、目录3、课程设计成绩评定表 4、课程设计任务书5、程序基本框架图6、程序设计说明书7、源代码清单 8、课设总结与心得四、设计题目学生档案管理系统宾馆住宿管理学生宿舍管理★职工信息管理系统人事档案管理系统 航空售票管理系统五、时间安排(一周:从6月27日到7月1日)1、查阅资料及程序设计(1天) 2、程序编制及调试(3天)3、成绩评定(0.5天) 3、打印报告(0.5天)六、参考文献1、《C语言程序设计》李淑华/李贞编大连理工大学出版社2、《C语言程序设计》孙连科/姚大鹏编辽海出版社3、《C++时尚编程百例》网冠科技编.机械工业出版社4、《TURBOC实用大全》徐金梧等编.机械工业出版社填写课设题目
程序基本框架结构图职工档案管理系统职工档案管理系统退出系统显示职工信息删除职工信息增加职工信息修改职工信息查询职工信息输入职工信息退出系统显示职工信息删除职工信息增加职工信息修改职工信息查询职工信息输入职工信息系统帮助说明退出按姓名删除按工号删除退出按姓名查询按电话号查询按职工号查询退出按姓名删除按工号删除退出按姓名查询按电话号查询按职工号查询程序设计说明书本次课程设计的函数,主要由帮助、输入、显示、查询、修改、增加,删除,退出八大模块组成,对于查询与修改等模块部分我会在个人部分中加以介绍。现在先大致介绍输入、显示、几个部分:在输入模块中,先使用fopen函数打开文件,再根据所要输入职工信息的总人数,通过for语句循环输入职工信息,最后进入保存函数将输入的信息保存;而在显示模块中,用if语句进行判定打开文件,并通过printf函数显示出来;在最后的删除模块中,采用的是先查找再删除形式,其中先标记查找出来的信息,让其信息总数减少一个,再通过a[i]=a[i+1]使下一个覆盖到原来的部分;而在编辑编译时所呈现出的页面效果时,是根据页面工整为主要依据来修改的,具体没什么重点,就不加以描述。我设计的是程序是查询、修改职工档案信息。在修改查询模块时,我先添加了一个子菜单,同样是使用switch语句来进入按姓名查询还是按工号查询等,使页面显得工整,并且操作起来也更加方便;修改按工号查询时,我使用的是通过strcmp函数让输入的字符或数字与所存的信息循环对比,当信息相同时调出所查到的学生的信息并且加以显示。编程序时,除了运用基本的输入、输出函数外,还运用了while()、switch()函数分别查询、修改职工的信息,继而运用的是按“0”退出系统的方法,最后关闭文件。整体运用的是用main()函数调用chaxun()、xiugai()函数。还有修改时,必须特别注意先查询,然后才能修改。源代码清单#include<stdio.h>/*I/o函数*/#include<stdlib.h>/*其他说明*/#include<string.h>/*字符串函数*/#defineLEN30/*工号和姓名最大职工人数*/#defineN100/*最大职工人数*/structrecord/*声明函数体*/{charcode[20];/*工号*/charname[10];/*姓名*/intage;/*年龄*/charsex[5];/*性别*/charxueli[10];/*学历*/chartime[20];/*出生年月*/charadd[20];/*家庭地址*/chartel[20];/*电话*/}zg[N];intk=1,m,n;voidshuru();voidchaxun();voidxiugai();voidzengjia();voidshanchu();voidxianshi();voidbaocun();voidcaidan();voidtuichuxitong();voidhuanyingye();intmain(){huanyingye();system("pause");system("cls");printf("请按任意键进入主菜单!\n");system("cls");while(k){caidan();system("pause");}return0;}voidhelp(){system("COLOR2f");printf("\n尊敬的用户您好!");printf("\n============================================================\n");printf("\n|1.欢迎进入帮助系统!|\n|");printf("\n|2.请按照菜单提示进入数字代号!|\n|");printf("\n|3.增加职工信息后,请切记保存!|\n|");printf("\n|4.谢谢您的使用!|\n|");printf("\n============================================================\n");}voidshuru()/*实现录入职工基本信息功能*/{inti,flag=1;while(flag){flag=0;printf("请输入需要创建信息的职工人数(1-100):\n");scanf("%d",&n);if(n<1||n>100){flag=1;printf("输入错误,检查后请重新输入!\n");}}for(i=0;i<n;i++){printf("请输入第%d个职工的基本信息:\n",i+1);printf("请输入工号:\n");scanf("%s",zg[i].code);printf("请输入姓名:\n");scanf("%s",zg[i].name);getchar();printf("请输入性别(男,女):\n");scanf("%s",zg[i].sex);printf("请输入学历:\n");scanf("%s",zg[i].xueli);printf("请输入年龄:\n");scanf("%d",&zg[i].age);printf("请输入出生年月(输入格式:年.月):\n");scanf("%s",zg[i].time);printf("请输入家庭地址:\n");scanf("%s",zg[i].add);printf("请输入电话号码:\n");scanf("%s",zg[i].tel);}printf("录入完毕!\n");baocun();}voidbaocun()/*保存职工信息到文件的函数*/{inti;FILE*fp;if((fp=fopen("zg.txt","wb"))==NULL)/*创建文件并判断是否能够打开成功*/{printf("文件不能打开!\n");exit(0);/*如果不能打开文件,则关闭当前所有的文件*/}for(i=0;i<n;i++)/*将内存中的职工信息写入到磁盘文件中*/if(fwrite(&zg[i],sizeof(structrecord),1,fp)!=1)printf("文件输入错误!\n");fclose(fp);/*关闭文件*/}voidchazhao(){inti,t,flag;chars1[30];system("COLOR5f");printf("\n===============================\n");printf("1.按工号查询\n");printf("2.按姓名查询\n");printf("3.按电话号查询\n");printf("4.按学历查询\n");printf("5.退出本菜单\n");printf("===============================\n");while(1){flag=0;printf("请输入子菜单编号:");scanf("%d",&t);switch(t){case1:printf("请输入要查询的职工的工号:\n");scanf("%s",s1);for(i=0;i<n;i++)if(strcmp(zg[i].code,s1)==0){flag=1;printf("职工工号职工姓名年龄性别学历出生年月家庭地址电话\n");printf("===================================================================\n");printf("%6s%7s%6d%5s%7s%9s%8s%10s\n",zg[i].code,zg[i].name,zg[i].age,zg[i].sex,zg[i].xueli,zg[i].time,zg[i].add,zg[i].tel);}if(flag==0)printf("该工号不存在!\n");break;case2:printf("请输入要查询的职工的姓名:\n");scanf("%s",s1);for(i=0;i<n;i++)if(strcmp(zg[i].name,s1)==0){flag=1;printf("职工工号职工姓名年龄性别学历出生年月家庭地址电话\n");printf("================================================================\n");printf("%6s%7s%6d%5s%7s%9s%8s%10s\n",zg[i].code,zg[i].name,zg[i].age,zg[i].sex,zg[i].xueli,zg[i].time,zg[i].add,zg[i].tel);}if(flag==0)printf("该姓名不存在!\n");break;case3:printf("请输入要查询的职工的电话号:\n");scanf("%s",s1);for(i=0;i<n;i++)if(strcmp(zg[i].tel,s1)==0){flag=1;printf("职工工号职工姓名年龄性别学历出生年月家庭地址电话\n");printf("====================================================================\n");printf("%6s%7s%6d%5s%7s%9s%8s%10s\n",zg[i].code,zg[i].name,zg[i].age,zg[i].sex,zg[i].xueli,zg[i].time,zg[i].add,zg[i].tel);}if(flag==0)printf("该电话号不存在!\n");break;case4:printf("请输入要查询的职工的学历:\n");scanf("%s",s1);for(i=0;i<n;i++)if(strcmp(zg[i].xueli,s1)==0){flag=1;printf("职工工号职工姓名年龄性别学历出生年月家庭地址电话\n");printf("===============================================================\n");printf("%6s%7s%6d%5s%7s%9s%8s%10s\n",zg[i].code,zg[i].name,zg[i].age,zg[i].sex,zg[i].xueli,zg[i].time,zg[i].add,zg[i].tel);}if(flag==0)printf("该学历不存在!\n");break;case5:return;default:printf("请在1--5之间选择\n");}}}voidxiugai(){inti,t,num;charsex1[3],s1[30],s2[30];printf("请输入要修改的职工的工号:\n");scanf("%s",s1);for(i=0;i<n;i++)if(strcmp(zg[i].code,s1)==0)num=i;system("COLOR4f");printf("=============================================\n");printf("|1.修改姓名|\n");printf("|2.修改年龄|\n");printf("|3.修改性别|\n");printf("|4.修改学历|\n");printf("|5.修改出生年月|\n");printf("|6.修改地址|\n");printf("|7.修改电话号码|\n");printf("|8.修改退出本菜单|\n");printf("=============================================\n");while(1){printf("请输入子菜单的编号:");scanf("%d",&t);switch(t){case1:printf("请输入新的姓名:\n");scanf("%s",s2);strcpy(zg[num].name,s2);break;case2:printf("请输入新的年龄:\n");scanf("%s",s2);scanf("%d",&zg[num].age,s2);break;case3:printf("请输入新的性别:\n");scanf("%s",sex1);strcpy(zg[num].sex,sex1);break;case4:printf("请输入新的学历:\n");scanf("%s",s2);strcpy(zg[num].xueli,s2);break;case5:printf("请输入新的出生年月:\n");scanf("%s",s2);strcpy(zg[num].time,s2);break;case6:printf("请输入新的地址:\n");scanf("%s",s2);strcpy(zg[num].add,s2);break;case7:printf("请输入新的电话号码:\n");scanf("%s",s2);strcpy(zg[num].tel,s2);break;case8:return;default:printf("请在1--8之间选择\n");}baocun();}}voidpaixu(){inti,j,*p,*q,s;chartemp[10];for(i=0;i<n-1;i++){for(j=n-1;j>i;j--)if(strcmp(zg[j-1].code,zg[j].code)>0){strcpy(temp,zg[j-1].code);strcpy(zg[j-1].code,zg[j].code);strcpy(zg[j].code,temp);strcpy(temp,zg[j-1].name);strcpy(zg[j-1].name,zg[j].name);strcpy(zg[j].name,temp);strcpy(temp,zg[j-1].sex);strcpy(zg[j-1].sex,zg[j].sex);strcpy(zg[j].sex,temp);strcpy(zg[j-1].xueli,zg[j].xueli);strcpy(zg[j].xueli,temp);strcpy(temp,zg[j-1].time);strcpy(zg[j-1].time,zg[j].time);strcpy(zg[j].time,temp);strcpy(temp,zg[j-1].add);strcpy(zg[j-1].add,zg[j].add);strcpy(zg[j].add,temp);strcpy(temp,zg[j-1].tel);strcpy(zg[j-1].tel,zg[j].tel);strcpy(zg[j].tel,temp);p=&zg[j-1].age;q=&zg[j].age;s=*p;*p=*q;*q=s;}}}voidzengjia(){inti=n,j,flag;printf("请输入将要增加的职工数目:\n");scanf("%d",&m);do{flag=1;while(flag){flag=0;printf("请输入第%d个职工的工号:\n",i+1);scanf("%s",zg[i].code);for(j=0;j<i;j++)if(strcmp(zg[i].code,zg[j].code)==0){printf("该工号已经存在,请仔细核查后重新输入!\n");flag=1;break;}}printf("请输入第%d个职工的职工姓名:\n",i+1);scanf("%s",zg[i].name);printf("请输入第%d个职工的职工年龄:\n",i+1);scanf("%d",&zg[i].age);printf("请输入第%d个职工的职工性别:\n",i+1);scanf("%s",zg[i].sex);printf("请输入第%d个职工的职工学历:\n",i+1);scanf("%s",zg[i].xueli);printf("请输入第%d个职工的职工出生年月:(格式:年,月,日)\n",i+1);scanf("%s",zg[i].time);printf("请输入第%d个职工的职工家庭地址:\n",i+1);scanf("%s",zg[i].add);printf("请输入第%d个职工的职工电话:\n",i+1);scanf("%s",zg[i].tel);if(flag==0)i++;}while(i<n+m);n=n+m;printf("输入完毕!\n\n");baocun();paixu();}voidshanchu(){inti,j,flag;chars1[30];system("COLOR5f");printf("\n=================================\n");printf("|1.按工号删除|\n");printf("|2.按姓名删除|\n");printf("|3.退出系统|\n");printf("=================================\n");while(1){flag=0;printf("请输入子菜单编号:");scanf("%d",&j);switch(j){case1:printf("请输入将要删除的职工的工号:\n");scanf("%s",s1);for(i=0;i<n;i++)if(strcmp(zg[i].code,s1)==0){flag=1;for(j=i;j<n-1;j++)zg[j]=zg[j+1];break;}if(flag==0)printf("该工号不存在!\n");if(flag==1){printf("删除成功!!\n");n--;}break;case2:printf("请输入将要删除的职工的姓名:\n");scanf("%s",s1);for(i=0;i<n;i++)if(strcmp(zg[i].name,s1)==0){flag=1;for(j=i;j<n-1;j++)zg[j]=zg[j+1];}if(flag==0)printf("该姓名不存在!\n");if(flag==1){printf("删除成功!!\n");n--;}break;case3:baocun();return;default:printf("请在1--3之间选择\n");}}}voidxianshi(){inti;FILE*fp;if((fp=fopen("zg.txt","rb"))==NULL){printf("打开文件时错误!请按任意键退出!");system("pause");exit(0);}printf("所有职工的信息为:\n\n");printf("职工工号职工姓名年龄性别学历出生年月家庭地址电话\n");printf("============================================================================\n");for(i=0;fread(&zg[i],sizeof(structrecord),1,fp)!=0;i++)printf("%6s%7s%6d%5s%7s%9s%8s%10s\n",zg[i].code,zg[i].name,zg[i].age,zg[i].sex,zg[i].xueli,zg[i].time,zg[i].add,zg[i].tel);}voidtuichuxitong(){system("COLOR3f");printf("【职工信息管理系统】\n");printf("\n");printf("\n");printf("制作:第六组\n");printf("================================================================================\n");printf("●☆☆Bye-Bye☆☆●\n");printf("\n");printf("★★★★★★★★★★★★★★★★★★★★★★★★★★★★\n");printf("\n");printf("\n");printf("☆☆☆☆☆☆☆☆☆☆☆\n");printf("\n");printf("★★★★★★★★★★★\n");printf("沈★后\n");printf("阳★勤\n");printf("工★部\n");printf("程★职\n");printf("学★员\n");printf("院★表\n");printf("★\n");printf("★\n");printf("^@^谢谢使用^@^\n");}voidhuanyingye(){system("COLOR6f");printf("\n");printf("\n");printf("\n");printf("★沈阳工程学院★\n");printf("\n");printf("\n");printf("\n");printf("\n");printf("\n");printf("尊敬的用户:您好!\n");printf("\n");printf("\n");printf("欢迎使用\n");printf("\n");printf("\n");printf("☆-【职工信息管理系统】-☆\n");printf("\n");}voidcaidan(){intnum;system("COLOR1f");printf("\n\n职工信息管理系统\n\n");printf("================================================================================\n");printf("===============制作:第六组===========\n");printf("\n");printf("==============系统功能菜单==============\n");printf("=======友情提醒:查询前请刷新系统!======\n");printf("========================================\n");printf("|======================================|\n");printf("|0.系统帮助说明1.输入职工信息|\n");printf("||\n");printf("|2.查询职工信息3.修改职工信息|\n");printf("||\n");printf("|4.增加职工信息5.删除职工信息|\n");prin
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 年产xxx腕力器项目投资分析报告
- 云石胶项目可行性研究报告
- 年产xxx燕京宴酒项目投资分析报告
- 2024年关节病项目资金需求报告代可行性研究报告
- 5.1+植被高一地理人教版(2019)必修第一册
- 一年级数学下册教学设计-4.100以内数的认识《数的读写》人教版
- 一年级下册数学导学案- 4 比大小 用“多少”描述数量之间的关系-人教新课标
- 二年级上册数学教案-五单元 观察物体∣人教新课标
- 新生儿胆红素脑病科普
- 地方政府与城投企业债务风险研究报告-浙江省篇 2024 -联合资信
- 阿维塔人才测评试题库
- 电解质紊乱-课件
- 银行物业服务环境卫生管理方案
- 文旅剧本杀项目策划方案
- 红军之父伟大的革命家朱德
- 给小学生科普人工智能
- 哥斯达黎加资料课件
- 退休兼职规定
- 6、电力建设工程概预算定额-热力设备安装工程课件
- 香港大公报电子版
- 《漆包线基础知识》课件
评论
0/150
提交评论