还剩18页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
o+0位族大多语言课程设计报告China Universityof Geosciences学院自动化学院专业自动化班级231XXX姓名XXX学号231XXX-XXsystem〃cls〃;printf〃\n\n\n\n〃;printf〃------仪器仪表管理系统-----\n〃printf〃\n\n〃;printfC请输入仪器名称〃;scanf〃如〃,equ_input;j=presence equ input;//printf〃\n%d〃,j;systempause;ifj!=O{whilel{if c=,s,||c--S,x++;if c==,w||c=W x一;if x==6x=l;if x==0x=5;ifc==13{switch x{case1:myleanj;break;case2:mybackj;break;case3:myrepairj;break;case4:mydelj;break;case5:returnl;isystem〃cls〃;printf〃\n\n\n\n〃;printf z,-----仪器仪表管理系统------\n〃;/*printf/z请输入仪器名称:〃;scanf〃%s〃,equinput;printf〃\n\n〃;*/if x==lprintf〃--->仪器仪表借出<----\n〃;elseprintfC仪器仪表借出\n〃;printf C\n\n,z;if x==2printf z,---〉仪器仪表归还〈----\n〃;elseprintfC仪器仪表归还\n〃;printf〃\n\n〃;if x==3printf z,---〉仪器仪表维修<----\n〃;elseprintf,z仪器仪表维修\n〃;printf〃\n\n〃;if x==4printf,z--->仪器仪表报废《----\n〃;elseprintfC仪器仪表报废\n〃;printf〃\n\n〃;if x==5printf〃-->返回主菜单<-----\n〃;elseprintfC返回主菜单\n〃;printf〃<------------------------------------------------------------〉\n〃;c=getch;else/*system〃c]s〃;printf〃\n\n\n\n〃;printf(,z——仪器仪表管理系统一-\n〃);printf〃\n\n〃;*/printf(〃\n\n〃);printf(〃对不起!找不到该仪器\n〃);(可能是由于您输入仪器的名称错误,)printf\n“;(也可能是由于无此仪器,还没购买)printf\n;printf(〃\n\n〃);(------------------开始(修改失败,请按任意键返回主菜单printf\nTprintf(〃--------------------------------------------------------\n〃);J输入仪器仪表名称getchO;//return;}}借出模块
(1)首先输入借出的时间,然后在仪器仪表的结构体数组中查/否空二找该仪器仪表在这个输入的时间点上有无其他状态若无一否其他状态则可以借出,否则不可借出是【程序】int myleanintj{int year,month,day;system〃cls〃;printf〃\n\n\n\n〃;printf,z-----仪器仪表借出系统〉\n〃);目录
1.题目概述,总体设计-----------------------------第1页
2.详细设计,菜单函数-----------------------------第2页
3.功能模块录入模块-----------------------------第3页
4.状态改变模块----------------------------------------------------------第4页
5.状态改变,借出归还-----------------------------第6页
6.状态改变,维修--------------------------------第7页.
7.状态改变,删除--------------------------------第8页
8.状态查询模块----------------------------------------------------------第9页
9.按名称查询-------------------------------------------------------------第11页
10.按时间点/段查询----------------------------------------------------第12页
11.公共函数---------------------------------------------------------------第13页
12.上机实践第14页
13.程序的亮点与不足第17页
14.总结第18页题目仪器仪表管理系统[要求]系统功能的基本要求⑴新的仪器仪表信息录入()在借出、归还、维修时对仪器仪表信息的修改2⑶对报废仪器仪表信息的删除()按照一定的条件查询、统计符合条件的仪器仪表信息;查询功能至少应4包括仪器仪表基本信息的查询、按时间段(如在年月日到年月日购买、借20041120041010出、维修的仪器仪表等)查询、按时间点(借入时间、借出时间、归还时间)查询等,统计功能至少包括按时间段统计、按仪器仪表的基本信息统计等⑸对查询、统计的结果打印输出[提示]数据结构采用结构体仪器仪表信息包括仪器仪表名、仪器仪表编号、购买时间、借入时间、借出时间、归还时间、维修时间、状态信息(代表可借出代表可借入代表正在维修)等0,2需求分析:根据题目要求,由于仪器仪表信息是存放在文件,所以应提供文件的输入、输出等操作;在程序中要浏览仪器仪表的信息应提供录入、显示、查找,修改等操作;另外还应提供键盘式选择菜单实现功能选择总体设计根据上面的需求分析,可以将这个系统的设计分为三个大的模块仪表仪器录入、仪表仪器修改(删除)、仪表仪器查询详细设计仪器仪表管理系主函数主函数一般设计得比较简洁,只提供输入、处理和输出部分的函数调用其中各功能模块用菜单方式选择其中流程图如下[程序]其中为主函数设定了一个菜单函数,方便用于选择其他模块函数用获得所按下的键值,getchO;用函数内的局部静态变量储存键值对应的其他功能函数void menuchar c/*菜单函数*/{static int n=0;〃内部变量if c二二s I|c=S n++;if c二二w||c二二『n--;ifn==5n=l;ifn==0n=4;ifc=13{switchncase2change;break;〃修改case3serchO;break;〃查询case4exit0;systemcls;printf\nn;\n;printfC仪器仪表管理系统{case1if insert=0insert;break;〃录入printf\n;I姓名printf xxx;〃退出程序printf班级231xxx;printf H\n\n,r;Jifn=1根据选择的功能调用功能模块函数printf M--仪器仪表录入《一\n,f;else Iprintf M仪器仪表录入\n;结束printf\n;if(n=2)printf
(一)仪器仪表借还/删除〈一\n);elseprintf(仪器仪表借还/删除\n”);printf(\n);if(n=3)printf(H—>仪器仪表查询<一\n);elseprintf(H仪器仪表查询\n);ifn=4printf,r-->退出程序<--\nn;elseprintf退出程序\n”;printf,r\nn;〃主函数void main{system,,clsn;printf\n\n\nn;printf一>仪器仪表管理系统〈一\n;printf\n;printf,r-->按火向上选择<--n;printfM->按5向下选择<一\n;printf M一>按回车确定选择<一\n;printf\n;printf M\n,f;printf M->按任意键进入系统〈一\nn;printf<---------------------------->\nn;getch;menu s;whilel menugetchO;}二各功能模块设计[数据结构]数据结构选用结构体数组这里只简单的给仪器仪表两个部分,一个为仪器仪表的名称、字符串函数,一个为仪器仪表的各个时间点的状态定义一个的三维数组,数组下标表示年月time日,数组的值表示仪器的状态^define buy1〃购买#define lean2〃借出#define repair3〃维修Sdefine inlib4〃空闲#define yearmax3000#define month_max12ttdefine day_max31ttdefine N100〃预设仪器最大数int n;〃仪器数struct equment{char name
[100];int time[year_max+l][month_max+l][day_max+l];}equ[N];录入模块1通过函数实现仪器名称的录入,函数实现仪器状态的更改strcpy state【程序】void insert输入仪器仪表名称{int i,j year,j month,day,year,month,day;char equ_input
[100];systemcls;printf,,\n\n\n\n^,;printfC—>仪器仪表管理系统<一printf n\n\n\n\n,r;printfn请输入仪器的名称”;scanf H%s,equ_input;ifpresenceequ_input!=0printf\n;printf\n;;对不起!此仪器已购买printf\nprintf\n;录入失败,请按任意键返回主菜单printf\n“;printfgetchO;\nu;}else{int stateint year,int month,int day,intn,int s;n++;strcpy equ[n].name,equ_input;〃将equ_input复制给equ[equ_num].nameprintf H\nM;printfu请输入购买时间年/月/日例如1998/2/15”;scanf n%d/%d/%d,year,month,day;state year,month,day,n,inlib;//equ[n]将当天状态改为空闲equ[n].time[year][month][day]=buy;//equ[n]将该天以后状态改为购入//printfM%d,f,equ[n].time[year][month][day];printf H\nM;printf\nn;录入成功,请按任意键返主菜单printf[U\n;printf,r\nu;printf,f\nH;printf n--------------------------------------------------\n;getchO;}}二状态改变模块该模块包括对仪器仪表的借出、归还、维修、报废等小模块的操作,仍然用函数获取getch;键值来做上下选择本函数只考虑对一种仪器仪表的修改,故先要输入该仪器仪表的名称并查找是否已经购买【程序】int changechar equ_input
[100],c=,sint j,x=0;输入仪器仪表名称。
个人认证
优秀文档
获得点赞 0