仪器仪表管理_c语言仪器仪表管理课程设计(编辑修改稿)内容摘要:

图 19 删除模块流程图 【程序】 /*********************删除模块 **************************/ void delet() 显示所有记录,让用户看那条信息需要删除 输入要删除的编号 i!=0? 显示找到的记录调用删除记录 询问用户是否继续删除。 返回主菜单 结束 提示没有找到 开始 21 { struct equip q。 /* FILE *fp。 */ int i,n,k,w0=1,w1,w2=0。 n=load()。 do { k=1。 printf_face()。 for(i=0。 in。 i++) { if((i!=0)amp。 amp。 (i%10==0)) { printf(\n\n 记住所要修改的编号。 按任意键继续 )。 getchar()。 puts(\n\n\n)。 } printf_one(i)。 } do { printf(\n\n 请输入所要修改的编号 :)。 scanf(%s,)。 for(i=0。 in。 i++) if(strcmp(,eq[i].num)==0) { k=i。 q=eq[i]。 } if(k==1) printf(\n\n 编号不存在。 请重新输入 )。 } while(k==1)。 printf_face()。 printf_one(k)。 printf(\n 确认删除。 \n\n\t1).是 2).不保存返回 [ ]\b\b)。 scanf(%d,amp。 w1)。 if(w1==1) { eq[k].num[10]=39。 039。 printf(\n 成功 \n\n 还要删除其他吗。 \n\n\t1).是 2).保存退出 \t[ ]\b\b)。 scanf(%d,amp。 w0)。 w2=1。 } else {w0=0。 if(w2==1) eq[k]=q。 } if(w0!=1amp。 amp。 w2==1) save(n)。 } while(w0==1)。 printf_back()。 } 22 ()保存函数 save(int n) 【程序】 void save(int n) { FILE *fp。 int i。 if((fp=fopen(,wb))==NULL) { printf(\n 无法打开该文件 \n)。 /* return NULL。 */ } for(i=0。 in。 i++) if(eq[i].num[10]!=39。 039。 ) if(fwrite(amp。 eq[i],sizeof(struct equip),1,fp)!=1) printf(文件写入错误 \n)。 fclose(fp)。 } ()加载函数 load() 【程序】 int load() { FILE *fp。 int i。 if((fp=fopen(,rb))==NULL) { printf(\n 无法打开该文件 \n); } for(i=0。 !feof(fp)。 i++) fread(amp。 eq[i],sizeof(struct equip),1,fp)。 fclose(fp)。 return(i1)。 } 23 () 编号输入函数 num_input(int I,int n) 【 程序 】 void num_input(int i,int n) { int j,k,w1。 do { w1=0。 printf(请输入编号 :)。 scanf(%s,eq[i].num)。 for(j=0。 eq[i].num[j]!=39。 \039。 j++) if(eq[i].num[j]39。 039。 ||eq[i].num[j]39。 939。 ) { printf(输入错误。 请输入 1 到 9 的数字 \n)。 w1=1。 break。 }if(w1!=1) for(k=0。 kn。 k++) if(k!=iamp。 amp。 strcmp(eq[k].num,eq[i].num)==0) { printf(该编号已存在。 请重新输入 \n)。 w1=1。 break。 } } while(w1==1)。 } () 整条输入函数 input(int i) 【程序】 void input(int i) { num_input(i,i)。 printf(名称 :)。 scanf(%s,eq[i].name)。 printf(请输入购买时间 :)。 scanf(%s,eq[i].pt)。 printf(请输入借出时间 :)。 scanf(%s,eq[i].bt)。 printf(请输入借入时间 :)。 scanf(%s,eq[i].lt)。 printf(请输入归还时间 :)。 scanf(%s,eq[i].rt)。 24 printf(请输入维修时间 :)。 scanf(%s,eq[i].mt)。 printf(请输入状态信息( 0 代表可借出, 1 代表已借出, 2 代表正在维修) :)。 scanf(%s,eq[i].st)。 } ( )显示数据结构项目函数 void printf_face() { printf(\n 编号 名称 购买时间 借出时间 借入时间 归还时间 维修时间 状态 \n)。 } () 显示一个记录函数 void printf_one(int i) { printf(%1s %s %s %s %s %s %s %5s\n,eq[i].num,eq[i].name,eq[i].pt,eq[i].bt,eq[i].lt,eq[i].rt,eq[i].mt,eq[i].st)。 } ()一个任务结束时选择浏览还是返回的函数 void printf_back() { int w。 printf(\n\n 成功 \n\n)。 printf( 操作 ?\n\n\ \ : [ ]\b\b)。 scanf(%d,amp。 w)。 if(w==1) menu()。 else exit(0)。 } ( )修改记录函数 modify_data(int,I,int,n) modify_data(int i) { int c,w。 do { printf(\n 你想修改 :\n\n 1).借出时间 2).归还时间 3.)维修时间 4).状态 25 )。 printf(你想选择。 : [ ]\b\b)。 scanf(%d,amp。 c)。 if(c4||c1) { printf(\n选择错误。 请重新选择 )。 getchar()。 } } while(c4||c1)。 do { switch(c) { case 1:printf(借出时间 :)。 scanf(%s,eq[i].bt)。 break。 case 2:printf(归还时间 :)。 scanf(%s,eq[i].rt)。 break。 case 3:printf(维修时间 :)。 scanf(%s,eq[i].mt)。 break。 case 4:printf(状态 :)。 scanf(%s,eq[i].st)。 break。 } printf(\nNow:\n)。 printf_face()。 printf_one(i)。 printf(\n 确认修改 \n\n\t1).Yes 2).No and remodify 3).Back without save [ ]\b\b)。 scanf(%d,amp。 w)。 } while(w==2)。 return(w)。 } 上机操作 26 1. 数据源 为了保存数据,需要 建立一个。 2. 编译、连接和运行 2. 结果 : (1).主菜单函数 图 110 主菜单 (2)输入模块 在主界面出现后输入 1并按E nter键,结果如下: 27 图 111 输入模块 图 112 输入模块 (3)添加模块 28 图 113 添加模块 图 114 添加模块 (4) 修改模块 29 图 115 修改模块 图 116 修改模块 (5)删除模块 30 图 117 删除模块 图 118 删除模块 (6)查找模块 31 图 119 查找 模块 图 120 查找模块 32 总结 课程设计是培养学生综合运用所学知识 ,发现 ,提出 ,分析和解决实际问题 ,锻炼实践能力的重要环节 ,是对我们的实际工作能力的具体训练和考察过程 .随着科学技术发展的日新月异,当今计算机应用在生活中可以说得是无处不在。 因此作为二十一世纪的大学来说掌握程序开发技术是十分重要的,而 C语言又是最常见,功能最强大的一种高级语言,因此做好 C语言课程设计是十分必要的。 回顾起此次课程设计,至今我们仍感慨颇多,的确,自从拿到题目到完成整个编程,从理论到实践,在整整 一周之 内 的日子里,可以学到很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。 通过这次课程设计使我们懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。 在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免 会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对一些前面学过的知识理解得不够深刻,掌握得不够牢固,比如说结构体,指针,链表 …… 通过这次课程设计之后,我们把前面所学过的知识又重新温故了一遍。 通过这次课程设计,使我对 C语言有了更进一步的认识和了解,要想学好它要重在实践,要通过不断的上机操作才能更好地学习它,我也发现我的好多不足之处,通过实践的学习,我认识到学好计算机要重视实践操作,不仅仅是学习 C语言,还是其它的语言,以及其它的计算机方面的知识都要重在实践,所以后在学习过程中,我会更加注视实践 操作,使自己便好地学好计算机。 33 参考文献 【1】 谭浩强,C 程序设计,清华大学出版社, 【2】 张冬梅,刘远兴,陈晶,王媛妮,C语言课程设计与学习指导,中国铁道出版社, 34 附录 :部分 /主要程序模块清单 include include define N 100 struct equip { char num[10]。 char name[50]。 char pt[10]。 char bt[10]。 char lt[10]。 char rt[10]。 char mt[10]。 char st[5]。 char time[5]。 }eq[N]。 void menu()。 void save(int n) { FILE *fp。 int i。 if((fp=fopen(,wb))==NULL) { printf(\n 无法打开该文件 \n)。 /* return NULL。 */ } for(i=0。 in。 i++) if(eq[i].num[10]!=39。 039。 ) if(fwrite(amp。 eq[i],sizeof(struct equip),1,fp)!=1) printf(文件写入错误 \n)。 fclose(fp)。 } 35 int load() { FILE *fp。 int i。 if((fp=fopen(,rb))==NULL) { printf(\n 无法打开该文件 \n)。 } for(i=0。 !feof(fp)。 i++) fread(amp。 eq[i],sizeof(struct。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。