




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
XXXXXXC程序设计课程设计说明书设计(论文)题目:停车场管理系统所在院:信息工程学院专业班级: 14通信工程2班学生姓名:学号:201451032指导教师:XXX2016年3月7日一、问题描述某停车场有20车位(1-20号),车辆信息包括:车位号,车牌号,进入时间,离开时间,计费(按每天20元收费)。编程实现如下菜单驱动的停车场管理系统:(1)查找空车位并显示车位号。(2)车辆进入(判断有没有空车位,如果有,允许车辆进入,同时记录车位号,车牌号及辆进入时间)。(3)查找车辆并显示车辆信息。(4)车辆离开(按照车位号查找车辆,如果在车位,计费,同时让车辆离开)。 (5)显示所有在位车辆信息。 二、设计要求1. 界面清晰,美观大方。2. 要求使用菜单的形式描述功能项,菜单设计美观大方、实用,可仿照课程说明书模板或自行设计。3. 模块化程序设计:要求在设计的过程中,按功能定义函数或书写多个文件,进行模块化设计,各个功能模块用函数的形式来实现。4. 程序以缩进格式书写,要求清晰、易懂。5. 各功能模块要求必须有准确描述函数功能的注释,重要语句最好也加上注释,以更好地让读者理解。6. 要求对2-3个重要功能模块进行描述。7. 课程设计题目选择要求一个班最多有两人可选择同一题目,但要求不得抄袭,最终每个人(即使题目相同)内容都是独立的。8. 课程设计至少包含5-10个功能模块,若题目中不够5-10个功能项,请自行设计功能项(5-10个功能项数目不同,得分也不同)。9. 可以选择老师提供的参考选题,也可以自选,如果自选,需要将自选题目的详细内容以及实现要求提供给老师,老师批准后方可采用。10. 要求利用结构化程序设计方法以及C的编程思想来完成系统的设计。11. 编辑平台选用Microsoft Visual C+ 6.0。三、分析与实现本程序采用模块化设计,主函数清晰、明了,各功能分别在不同模块中实现。共有七个功能模块,每个功能模块以函数的形式表示,实现了有关停车场管理的七项功能。具体实现如下:首先声明必要的变量及数据结构。/相关头文件 #include #include #include /符号常量定义struct Garage char carnum8; /*车牌号*/ int lay; /*层号*/ intgaragenum; /*车位号*/ int time; /*停车时间*/ intisempty; /*该车位是否为空,1表示空0表示有车*/ ; void Instruction() printf(停车场管理系统使用说明n); printf(停车请输入1 n); printf(取车请输入2 n); printf(查看全部车辆的信息请输入3 n);printf(退出请输入0 n); /*初始化停车场信息初始状态为第一层已经停有4辆车, *其车位号依次为14 , 停车时间依次为20, 15, 10 , 5 */ voidInit(struct Garage gar6) int i, j; /*给所有的车位的层号车位号初始化停车时间初始化为0停车位全都初始化为空*/ for (i=0; i2; i+) for (j=0; j6; j+) garij.lay = i+1; garij.garagenum= j+1; garij.time = 0; garij.isempty = 1; /*第一层的1-4号车位停车*/ for (i=0; i4; i+) gar0i.isempty =0; strcpy(gar00.carnum, 0000); /*初始化的车牌号*/ gar00.time = 20; strcpy(gar01.carnum, 1111); gar01.time = 15; strcpy(gar02.carnum, 2222); gar02.time = 10; strcpy(gar03.carnum, 3333); gar03.time = 5; /*新停入的汽车后将在此之前的所有车的停车时间加5*/ voidAddTime(struct Garage gar6) int i, j; for (i=0; i2; i+) for (j=0; j6; j+) if (garij.isempty = 0) garij.time += 5; /*停车模块*/ void Park(struct Garage gar6) int i; charnum8; printf(请输入车牌号); scanf(%s, num); /*查找空车位*/ for (i=0; i6; i+) if (gar0i.isempty = 1) printf(第一层第%d号车位空着请在此处停车n, i+1); strcpy(gar0i.carnum, num); printf(车牌号%s 层号1 车位号 %d n, num, i+1); AddTime(gar); /*在此之前停车的所有汽车时间加5*/ gar0i.isempty = 0; /*表示该车为已经停车*/ gar0i.time = 5; /*将时间设为5*/ return; printf(第一层已经没有空车位n); for (i=0; i6; i+) if (gar1i.isempty = 1) printf(第二层第%d号车位空着请在此处停车n, i+1); strcpy(gar1i.carnum, num); printf(车牌号%s 层号2 车位号 %d n, num ,i+1); AddTime(gar); /*在此之前停车的所有汽车时间加5*/ gar1i.isempty = 0; /*表示该车位已经停车*/ gar1i.time = 5; /*将时间设为5*/ return; printf(对不起1 2层都没有空车位您现在不能在此停车n); /*查看所有车辆信息*/ void Information(struct Garage gar6) int i, j; printf( 车牌号层号车位号停车时间n); for (i=0; i2; i+) for(j=0; j6; j+) if (garij.isempty = 0) printf( %s%8d%8d%8dn, garij.carnum, garij.lay, garij.garagenum, garij.time); printf(n); /*取车模块*/ double Leave(struct Garage gar26) int i, j; charnum8; double charge = 0; printf(请输入要取的车牌号); scanf(%s, num); for (i=0; i2; i+) for (j=0; j6; j+) if (!strcmp(garij.carnum, num) printf(您在%d层%d车位停车%d分钟n, garij.lay, garij.garagenum, garij.time); charge = garij.time/5*0.2; printf(停车费用为每5分钟0.2元您需交%.2lf元n, charge); garij.isempty = 1; return charge; printf(没有您输入的车号。nn); return charge; /*是否查看总收入*/ voidIsPrintTotal(double total) charch; printf(是否查看停车收费总计Y/N); scanf(%c, &ch); while (ch!=y &ch!=Y &ch!=n &ch!=N) printf(请输入Y或N ); scanf(%c, &ch); printf(n); switch (ch) case Y: case y: printf(停车收费总计为%.2lf元n, total); break; case N: case n: break; /*主函数模块*/ main() int choice; double total = 0; struct Garage gar26; Init(gar); /*初始化第一层已经停有的4辆车 */ while (1) Instruction(); printf(请输入要进行的操作:); scanf(%d, &choice); while (choice3) printf(输入的不合法请输入0-3选择); scanf(%d, &choice); switch (choice) case 1: Park(gar); break; case 2: total += Leave(gar); IsPrintTotal(total); break; case 3: Information(gar); break; case 0: exit(0); return 0; 四、运行与测试5、 总结与思考两个星期的努力终于总算把课程设计给完成了。这是一个坚苦而又漫长的过程。看着辛苦得来的劳动成果很是欣慰。刚开始可以说是一点头绪都没有于是就去图书馆找资料。找到了一些关于停车场管理系统的。可是这点进展却远远不够。这只是一个
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年天津市中考历史真题含答案
- 脑机接口临床-洞察及研究
- 人机协同能力构建-洞察及研究
- 长航时技术-洞察及研究
- 2025年事业单位笔试-云南-云南西药学(医疗招聘)历年参考题库含答案解析
- 2025年事业单位笔试-上海-上海中医康复学(医疗招聘)历年参考题库含答案解析
- 2025年事业单位工勤技能-陕西-陕西药剂员二级(技师)历年参考题库含答案解析(5套)
- 2025年度员工委派劳务输出合同模板(含全面绩效考核指标)
- 2025年国家公务员录用考试行测常识题库附答案
- 2025年公安招聘辅警考试笔试题(附答案)
- 2025上海市八年级升九年级数学暑假提升讲义:相似三角形压轴题(六大题型)原卷版
- 2025年工业互联网工程技术人员考核试题题库及答案
- 供货组织方案范文
- 农行OCRM系统讲解
- 2025年《药品经营和使用质量监督管理办法》培训试题及答案
- 2024年云南省县乡教师选调考试《教育学》真题汇编带解析(原创题)
- 工贸安全员考试题库及答案大全
- 羊肚菌栽培及其管理课件
- 教师身体健康管理指南
- 2025高空作业考试试题及答案(完整版)
- 公路水运工程施工安全风险评估指南 第6部分:航道工程JT∕T 1375
评论
0/150
提交评论