C语言课程设计报告仪器仪表管理系统报告.doc
《C语言课程设计报告仪器仪表管理系统报告.doc》由会员分享,可在线阅读,更多相关《C语言课程设计报告仪器仪表管理系统报告.doc(23页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、- .报告语言课程设计C学院:自动化学院专业:自动化班级: 231XXX XX: XXX 学号: 231XXX-XX - . 可修编.目录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、要求:(1)新的仪器仪表信息录入。(2)在借出、归还、维修时对仪器仪表信息的修改。(3)对报废仪器仪表信息的删除。(4)按照一定的条件查询、统计符合条件的仪器仪表信息;查询功能至少应包括仪器仪表根本信息的查询、按时间段(如在2004年1月1日到2004年10月10日购置、借出、维修的仪器仪表等)查询、按时间点(借入时间、借出时间、归还时间)查询等,统计功能至少包括按时间段统计、按仪器仪表的根本信息统计等。(5)对查询、统计的结果打印输出。提示数据构造采用构造体。仪器仪表信息包括仪器仪表名、仪器仪表编号、购置时间、借入时间、借出时间、归还时间、维修时间、状态信息(0 代表可借出,1代表可借入,2
3、 代表正在维修) 等。需求分析:根据题目要求,由于仪器仪表信息是存放在文件,所以应提供文件的输入、输出等操作; 在程序中要浏览仪器仪表的信息。应提供录入、显示、查找,修改等操作; 另外还应提供键盘式选择菜单实现功能选择。总体设计:根据上面的需求分析,可以将这个系统的设计分为三个大的模块: 仪表仪器录入、仪表仪器修改(删除)、仪表仪器查询仪器仪表管理系统查询录入修改详细设计一主函数主函数一般设计得比拟简洁,只提供输入、处理和输出局部的函数调用。其中各功能模块用菜单方式选择。其中流程图如下:程序其中为主函数设定了一个菜单函数,方便用于选择其他模块函数。用getch0;获得所按下的键值,用函数的局部
4、静态变量储存键值对应的其他功能函数。void menu(char c) /*菜单函数*/static int n=0; /部变量if(c=s|c=S) n+;if(c=w|c=W) n-;if(n=5) n=1;if(n=0) n=4;if(c=13)switch(n) 专业资料 case 1:if(insert ()=0) insert (); break; /录入 case 2:change();break; /修改 case 3:serch(); break; /查询开场 case 4:exit(0); /退出程序 ;system(cls);显示一系列功能选项printf(nn);pri
5、ntf( 仪器仪表管理系统 n);printf(n);选择一个功能printf( XX:xxx );printf( 班级231xxx); printf(nn);根据选择的功能调用功能模块函数if(n=1)printf( -仪器仪表录入仪器仪表借还/删除仪器仪表查询 退出程序仪器仪表管理系统按W向上选择按S向下选择按回车确定选择按任意键进入系统- n);printf( n);getch();menu(s);while(1) menu(getch(); 二各功能模块设计数据构造数据构造选用构造体数组。这里只简单的给仪器仪表两个局部,一个为仪器仪表的名称、字符串函数,一个为仪器仪表的各个时间点的状态
6、定义一个time的三维数组,数组下标表示年月日,数组的值表示仪器的状态。#define buy 1 /购置#define lean 2 /借出#define repair 3 /维修#define inlib 4 /空闲#define year_max 3000#define month_max 12#define day_max 31#define N 100 /预设仪器最大数 int n;/仪器数struct equment char name100;int time year_max+1month_max+1day_max+1;equN;(1) 录入模块开场通过strcpy函数实现仪器名
7、称的录入,state函数实现仪器状态的更改。输入仪器仪表名称【程序】void insert()int i,j_year,j_month,j_day,year,month,day;char equ_input100;是否已录入入system(cls);是printf(nnnn); 否printf( -仪器仪表管理系统- n);printf(nnnn);返回主菜单输入买入时间printf( 请输入仪器的名称:);scanf(%s,&equ_input);完毕if(presence(equ_input)!=0)printf(n);printf(n);printf( 对不起!此仪器已购置n );pri
8、ntf(n);printf( 录入失败,请按任意键返回主菜单n );printf(n);printf( n);getch(); elseint state (int year,int month,int day,int n,int s); n+;strcpy(equn.name,equ_input); /将equ_input复制给equequ_num.name printf(n);printf( 请输入购置时间年/月/日(例如1998/2/15):);scanf(%d/%d/%d,&year,&month,&day);state(year,month,day,n,inlib); / equn
9、将当天状态改为空闲equn.timeyearmonthday=buy; /equn 将该天以后状态改为购入/printf(%d,equn.timeyearmonthday);printf(n);printf(n);printf( 录入成功,请按任意键返回主菜单n);printf(n);printf(n);printf( n);getch(); (二) 状态改变模块该模块包括对仪器仪表的借出、归还、维修、报废等小模块的操作,仍然用getch();函数获取键值来做上下选择。本函数只考虑对一种仪器仪表的修改,故先要输入该仪器仪表的名称并查找是否已经购置。开场【程序】int change()输入仪器仪
10、表名称char equ_input100,c=s;int j,x=0;system(cls);是否已购置printf(nnnn);否printf( n);是printf(nn);选择需要进展的操作printf( 请输入仪器名称: );返回主菜单scanf(%s,&equ_input);完毕j=presence(equ_input);/printf(n%d,j); system(pause);if(j!=0)while(1)if(c=s|c=S) x+;if(c=w|c=W) x-;if(x=6) x=1;if(x=0) x=5;if(c=13) switch(x)case 1:mylean(j
11、);break;case 2:myback(j);break;case 3:myrepair(j);break;case 4:mydel(j);break;case 5:return(1);system(cls);printf(nnnn);printf( n);printf(nn);/*printf( 请输入仪器名称: );scanf(%s,equ_input); printf(nn);*/if(x=1)printf( -仪器仪表借出仪器仪表归还仪器仪表维修仪器仪表报废返回主菜单-n);elseprintf( 返回主菜单 n);printf( n); c=getch();else/*syste
12、m(cls);printf(nnnn);printf( n);printf(nn);*/printf(nn);printf( 对不起!找不到该仪器n);printf( 可能是由于您输入仪器的名称错误,n);printf( 也可能是由于无此仪器,还没购置。n);开场printf(nn);printf( 修改失败,请按任意键返回主菜单 n);输入仪器仪表名称printf( n);getch();/return; 是否空闲(1) 借出模块首先输入借出的时间,然后在仪器仪表的构造体数组中查是否找该仪器仪表在这个输入的时间点上有无其他状态。假设无其他状态那么可以借出,否那么不可借出。返回主菜单 标记状态
13、为借出【程序】int mylean(int j)int year,month,day;完毕system(cls);printf(nnnn);printf( n);printf(nn);printf( 请输入借出时间年/月/日: );scanf(%d/%d/%d,&year,&month,&day);/system(pause);/printf(%d,equj.timeyearmonthday);if (equj.timeyearmonthday=inlib) /判断仪器是否空闲printf(nn);printf( 借出成功,请按任意键返回上一级菜单 n);printf(n); printf(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课程设计 报告 仪器仪表 管理 系统
限制150内