您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > C语言课程设计报告--实验设备管理系统--吕浙明
课程设计报告课程名称C语言课程设计课题名称实验设设备管理系统专业计算机科学与技术班级191114班学号20111001948姓名吕浙明指导教师2010年08月27日C语言课程设计---------------实验设备管理系统2中国地质大学计算机高级语言(C)课程设计报告姓名吕浙明学号20111001948班级191114专业计算机科学与技术指导教师刘文中2012年1月15日C语言课程设计---------------实验设备管理系统3目录1、系统程序需求分析2、系统程序总体设计与模块划分3、系统程序详细设计与程序调试4、实习总结和心得体会C语言课程设计---------------实验设备管理系统4C语言程序设计报告--实验设备信息管理系统一课程设计的目的提高程序设计能力,检验课堂教学内容,掌握程序设计的基本方法和调试技能。二课程设计报告正文课程设计题目实验设备信息包括:设备编号、设备种类(如:微机打印机扫描仪等等)、设备名称、设备价格、设备购入日期、是否报废、报废日期等。试设计一实验设备信息管理系统,使之能提供以下功能:(1)能够完成对设备的录入和修改(2)对设备进行分类统计(3)设备的查询1需求分析实验室设备信息用文件存储,提供文件的输入输出操作;要能够完成设备的录入和修改,需要提供设备添加和修改操作;实现对设备进行分类统计,需要提供排序操作;实现对设备查询需要提供查找操作,设备的查询可根据设备编号设备种类设备购入日期正常设备(未报废的)等多种方式查询;另外还要根据键盘式选择菜单以实现功能选择。2总体设计与模块的划分整个系统可设计为实验设备信息输入模块实验设备信息添加模块实验设备信息修改模块实验设备分类统计模块和实验设备查询模块。4建立实验设备信息结构体,结构体成员包括设备编号设备种类设备名称设备价格设备购入日期是否报废报废日期。实验设备管理系统进入实验设备信息添加模块实验设备信息修改模块实验设备分内统计模块实验设备查询模块实验设备管理系统退出实验设备管理系统设计C语言课程设计---------------实验设备管理系统53详细设计3.1流程图显示3.2程序源代码A(1)各种各样的头文件以及各样的函数定义#includestdio.h#includestdlib.h#includestring.h#defineN50开始显示一系列函数—功能选择输入n,判断n是否是1到5?根据n值调用各功能模块函数程序结束C语言课程设计---------------实验设备管理系统6voidmenu();voidadd();voidmodify();//修改voidstat();//统计voidsearch();intload();(2)主函数主函数是整个程序的核心。它将其他函数包含在其中,是整个程序的“大脑”,它调用很多函数,为了是读者更加的清晰,明白,在主函数中又调用了其他的函数。voidmenu(){intn;puts(\t\t************************MENU*************************\n\n);puts(\t\t\t\t1.添加您所需实验设备的信息);puts(\t\t\t\t2.修改您所需实验设备的信息);puts(\t\t\t\t3.统计您所需实验设备的信息);puts(\t\t\t\t4.查询您所需实验设备的信息);puts(\t\t\t\t5.退出);puts(\n\n\t\t****************************************************\n);printf(清选择你所需服务的号码(1-5):[]\b\b);scanf(%d,&n);switch(n){case1:add();break;ycase2:modify();break;case3:stat();break;case4:search();break;case5:exit(0);default:menu();}}voidmain()/*主函数*/{menu();getchar();}开始显示一系列函数—功能选择输入n,判断n是否是1到5?根据n值调用各功能模块函数结束C语言课程设计---------------实验设备管理系统7B各功能模块设计(1)添加实验设备信息模块voidadd(){inti;FILE*fp;fp=fopen(eup.txt,a);if((fp=fopen(eup.txt,a))==NULL){printf(cannotopenfile\n);}printf(\n输入:编号\t种类\t名称\t价格\t购入日期\t是否报废\t报废日期\n);scanf(%s,temp.id);scanf(%s,temp.kind);scanf(%s,temp.name);scanf(%s,temp.price);scanf(%s,temp.in_date);scanf(%s,temp.reject);scanf(%s,temp.out_date);fprintf(fp,\n%s\t%s\t%s\t%s\t%s\t%s\t%s,temp.id,temp.kind,temp.name,temp.price,temp.in_date,temp.reject,temp.out_date);fclose(fp);C语言课程设计---------------实验设备管理系统8printf(\n\n\tSuccessful.^_^\n\n);printf(\n*********************************************************\n);printf(Whatdoyouwanttodo?\n\n);printf(\t1.继续添加\t2.返回主菜单\t3.退出\n);printf(\n************************************************************\n);printf(\n\n输入你要选择的号码(1-3):);scanf(%d,&i);if(i==1){add();}if(i==2){menu();}if(i==3){exit(0);}}开始是否能打开文件(eup.txt)输入我的值,判断输入的值是否在1到3之间根据我值在进行下一步的程序结束调用加载函数;计算记录的个数n输入要追加备记录的个数mk=m+nI从到k调用输入函数input();保存追加记录C语言课程设计---------------实验设备管理系统9(3)修改模块先判断是否能找到要修改的信息,如果找不到用户要修改实验设备信息的编号,则提醒用户“对不起,没有你所需的文件信息!”,若能找到用户要修改的信息的编号,则依次输出要修改的项目提示进行逐项修改,完成各项修改后输出提示:“1.继续修改\t2.返回主菜单\t3.退出”voidmodify(){FILE*fp;intn,k=0,b,c,i,e;chara[10];n=load();for(i=0;in;i++){printf(%s\t%s\t%s\t%s\t%s\t%s\t%s\n,eup[i].id,eup[i].kind,eup[i].name,eup[i].price,eup[i].in_date,eup[i].reject,eup[i].out_date);}printf(\n输入你要修改的设备的编号!\n\n实验设备的编号:);scanf(%s,a);C语言课程设计---------------实验设备管理系统10for(i=0;in;i++)if(strcmp(a,eup[i].id)==0)/*查找要修改的设备信息*/{k=1;c=i;break;if(k==0){printf(\n\n对不起,没有你所需的文件信息!);printf(\t1).文件内容在这里2).返回主菜单[]\b\b);scanf(%d,&b);if(b==1){modify();}if(b==2){menu();}}if(k==1){printf(\n找到要修改的设备!\n);printf(\n请输入你要修改的新信息:\n);printf(\n编号种类名称价格购入日期是否报废报废日期\n);scanf(%s,eup[c].id);scanf(%s,eup[c].kind);scanf(%s,eup[c].name);scanf(%s,eup[c].price);scanf(%s,eup[c].in_date);scanf(%s,eup[c].reject);scanf(%s,eup[c].out_date);}fp=fopen(eup.txt,w);}统for(i=0;in;i++){fprintf(fp,%s\t%s\t%s\t%s\t%s\t%s\t%s\n,eup[i].id,eup[i].kind,eup[i].name,eup[i].price,eup[i].in_date,eup[i].reject,eup[i].out_date);}fclose(fp);printf(\n\n\tSuccessful.^_^\n\n);printf(\n********************************************************************\n);printf(你还想做什么?\n\n);printf(\t1.继续修改\t2.返回主菜单\t3.退出\n);printf(\n*********************************************************************\n);printf(\n\n你的选择(1-3):);scanf(%d,&e);if(e==1){C语言课程设计---------------实验设备管理系统11modify();}if(e==2){menu();}if(e==3){exit(0);}}修改记录功能函数的值输入要修改的设备号是否存在提示没有找到显示找到的并调用修改函数继续修改返回主菜单YNNYC语言课程设计---------------实验设备管理系统12(4)统计模块voidstat(){FILE*fp;fp=fopen(eup.txt,r);if((fp=fopen(eup.txt,r))==NULL){printf(cannotopenfile\n);}while(!feof(fp))C语言课程设计---------------实验设备管理系统13{fscanf(fp,\n%s%s%s%s%s%s%s,temp.id,temp.kind,temp.name,temp.price,temp.in_date,temp.reject,temp.out_date);printf(\n%s\t%s\t%s\t%s\t%s\t%s\t%s,temp.id,temp.kind,temp.name,temp.price,temp.in_date,temp.reject,temp.out_date);}fclose(fp);menu();}(5)查询模块voidsearch(){inti,n,k=-1,w1,w2,w3;charc[10];n=load();printf(\n\n按照具体条件进行查找:\n\n1).实验设备的编号2).种类3).名称4).购入日期[]\b\b);scanf(%d,&w3);switch(w3){case1:{C语言课程设计---------------实验设备管理系统14printf(\n\n请输入要查找的设备的编号!设备的编号:);scanf(%s,c);for(i=0;in;i++)if(strcmp(c,eup[i].id)==0){k=i;printf(\n已经找到实验的设备!\n);printf(\n该设备的实验信息:\n);printf(\n编号种类名称价格购入日期是否报废报废日期\n\n);printf(%s\t
本文标题:C语言课程设计报告--实验设备管理系统--吕浙明
链接地址:https://www.777doc.com/doc-3259609 .html