




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、编号:061、 题目:设计一个机房收费管理系统二、设计思路1、总体设计1)分析程序的功能:设计一个机房收费系统,实现对学生上机收费的管理,从而方便学校机房的管理。2) 系统总体结构:每一次运行的过程可以由这几部分完成:输入:输入学生的上机学号,班级、姓名上级起始时间;计算:计算每个学生的上机费用;查询:查找学生上机信息并显示(班级、学号、姓名);显示:显示机器使用情况信息 总共四个步骤:模块函数名称输入学生信息Input查询学生上机情况Findstunum 计算机时费用Calculate显示机器使用情况Computer对于每一次运行,关注的数据有三个:(1)学生的信息 (2)计算机时费用 (3
2、)学生上机情况;对于统计信息需要三个: (1)学生上机信息并显示(班级、学号、姓名) (2) 显示机器使用情况信息 (3)上机学生的学号、班级、姓名、上机起始时间;这几组数据内部联系很大,所以考虑把他们封装为结构体变量。机器使用信息需要记录两个:(1)机器使用的标记 (2)使用机器的学生。根据问题的描述,可以按照程序要求的功能采用结构化的设计思想。机房收费系统可利用菜单(界面制作switch语句)使用户选择各个功能模块,而后可根据不同的选项进入到不同的功能模块进行执行。结束程序,选择y之外的任何字母或数字,如果想让程序循环执行,则选择y。以上功能模块分别用函数来实现,然后由主函数main来调用
3、。表示信息成员名称表示信息成员名称时hour学号num分minute班级class秒second姓名name机器使用标记f上机起始时间start,finish使用机器学生Student stus上机标志flag2、各功能模块的设计:说明各功能模块的实现方法1)Input模块该函数为输入学生信息:学号,姓名,班级,上机起始时间,并对学生是否上机做标记(flag为1,f为1为上机),人数与上机数一致。2)Findstunum模块查询功能:当输入的学号与学生信息中的学号相同时,则输出该生学号,班级,姓名和上下时间,若该生未下机,则下机时间显示0。下机功能:询问是否下机,用switch语句控制,若下机
4、则要求输入下机时间,不下机则退出。3) Calculate(计算)模块该模块中,由于时、分、秒三个时间单位不统一,首先要统一单位,均用秒做单位(1h=3600s 1min=60s),然后判断上机时间是否满一小时,不满一小时按一小时收费,超过一小时再进行计算。不足一小时按一小时收费,整小时则每小时1元收费。代码参见Calculate(计算)函数。4)calout(输出)模块输出上机学生学号,班级,姓名,若下机显示消费金额,没下机显示“未下机”。5) computer模块首先计算机使用情况信息:通过标记判断机器是否在使用,机器在使用则显示学生信息,机器未使用则显示学生已下机。通过标记判断机器是否在
5、使用,机器在使用则显示学生信息,机器未使用则显示学生已下机。2)查询功能:采取输入的学号与学生信息中的学号是否对应相等来判断。4、你所设计的程序最终完成的功能1)说明你编制的程序能完成的功能输入功能:输入上机学生的学号,班级,姓名,上机起始时间。计算功能:计算每个学生的上机费用,每小时1元。查询功能:查找学生上机信息并显示(班级、学号、姓名)显示机器使用情况信息。2)准备的测试数据及运行结果三、程序清单1)main函数/主函数void main() while (y) cout选择功能endl; cout0输入现在时间endl; cout1输入学生信息endl; cout2按学号查找endl;
6、 cout3电脑使用情况endl; cout4上机费用endl; cout5结束程序endl; couta; switch (a) case 0: time();break; case 1: input();break; case 2: findstunum();break; case 3: computer();break; case 4: calout();break; case 5: y=0;break; 2)Input函数void input() while(1) cout输入学生的 学号 班级 姓名 上机起始时间 h-m-ssturenshu.numsturenshu.banjist
7、sturenshu.start.hour sturenshu.start.minutesturenshu.start.second; sturenshu.flag=1; comprenshu.f=1; strcpy(comprenshu.stus.num,sturenshu.num); comprenshu.stus.banji=sturenshu.banji; strcpy(,); cout1.继续输入 0.结束输入flag; renshu+; if (flag!=1) break; /跳出输入循环
8、3)Findstunum函数void findstunum() int a; char xh10; coutxh; for(int i=0;irenshu;i+) if(strcmp(stui.num,xh)=0) cout显示学生的 学号 班级 姓名 上下时间endl; t stui.start.hourstui.start.minutestui.start.second- stui.finish.hourstui.finish.minutestui.finish.secondendl; cout是否下机?endl; cout
9、1 是 2否a; switch (a) case 1: cout输入下机时间 h-m-sstui.finish.hourstui.finish.minutestui.finish.second; stui.flag=2; compi.f=2; break; case 2:break; for(i=0;irenshu;i+) if(strcmp(stui.num,xh)!=0) cout=不存在!=0) if(d-c0) a=(c+1)*1.00000; if(d-c=0) a=c*1.00000; return a;4)Computer函数void computer() cout=计算机的使用
10、情况=endl; cout计算机编号 使用的学生的学号 班级 姓名 endl; for(int i=0;i30;i+) if(compi.f=2) coutit学生已下机endl; else if(compi.f=1) endl; else coutit该计算机未被使用0) if(d-c0) a=(c+1)*1.00000; if(d-c=0) a=c*1.00000; return a;6)Calout函数void calout() /计算机时费用 cout显示学生的 学号 班级 姓名
11、消费金额endl; for(int i=0;irenshu;i+) if(stui.flag=1) tcal(i)t未下机endl; if(stui.flag=2) tcal(i)endl; 7)Time函数void time() int h,m,s; cout时间格式h-m-shms; for(int i=0;irenshu;i+) if(stui.finish.hour!=0|stui.finish.minute!=0|stui.finish.second!=0) /如果有结束时间,将不对结束时间赋值 ; else /没有结束时间,赋当前时间值 stui.finish.hour=h; stui.finish.minute=m; stui.finish.second=s; 四、对该设计题目有何更完善的方案1、对自己完成程序进行自我评价。能独立思考程序并在他人协助下完成程序编写与调试,不能很好的运用所学的知识解决程序中所出现的问题。通过对课程的设计,使我知道自身的不足,以及C+的深奥,相信自己会在假期中增强对C+的了解及应用.2、对课题提出更完善的方案加入创新元素就更好了,以后自己在这方面多努力。五、收获及心得体对输入的数据要进行合理性检验,例如数
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 贵州工程职业学院《汽车检测与诊断技术》2023-2024学年第二学期期末试卷
- 2024年成囊材料项目投资申请报告代可行性研究报告
- 工程项目设计介绍
- 汽车日常维养核心要点
- 2025年广东佛山顺德区杏晖投资控股集团有限公司招聘笔试参考题库含答案解析
- 机械毕业设计致谢要点
- 高速公路定期检测项目技术状况指数MQI评定报告
- 2025年江苏南通市经济技术开发区总公司招聘笔试参考题库附带答案详解
- 汽车新纪元:零部件制胜-把握市场趋势开创未来
- 珠宝首饰店铺设计
- 环保舆情防范预案
- 2025年甘肃公务员省考《行测》真题(含答案)
- 政府项目投资合作框架协议书范本
- JGJT322-2013混凝土中氯离子含量检测技术规程标准
- 具身智能项目建设规划方案(参考模板)
- 2025年福建厦门湖里区市场监督管理局招聘协管员93人高频重点模拟试卷提升(共500题附带答案详解)
- 科学小实验手摇发电机
- 西亚、中亚、北非音乐文化
- 三类人员安全教育
- 2024电能存储系统用锂蓄电池和电池组安全要求
- 2023年招聘业务员考试试题
评论
0/150
提交评论