停车场管理系统软件工程课程设计_第1页
停车场管理系统软件工程课程设计_第2页
停车场管理系统软件工程课程设计_第3页
停车场管理系统软件工程课程设计_第4页
停车场管理系统软件工程课程设计_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

word文档精品文档分享课程设计说明书课程名称:_软件工程课程设计___题目:_停车场管理系统____院系:理学院专业班级:学号:学生XX:指导教师:__2021年6月8日word文档精品文档分享XX理工大学课程设计〔论文〕任务书理学院院系信计教研室学号学生XX专业〔班级〕设计题目停车场管理系统设系统平台:WindowsXP计开发工具:MicrosoftVC++6.0技建模工具:MicrosoftVisio2007术抓图工具:红蜻蜓抓图精灵参数利用软件工程的思想和方法完成停车场管理系统的分析、设计、实现等,主要实现的功能有:记录车辆信息,动态分配车位,停车费用结算,查看停车场设车位的使用状况,退出系统等功能,解决车辆停放难,乱收费等问题。计要求工作需求分析,概要设计,详细设计,编码设计以及调试。量5月28日--5月30日完成需求分析工6月1日--6月3日完成概要设计和详细设计作6月4日--6月6日完成程序设计计6月7日完成Word文档编写及窗口截图划6月8日提交程序和课程设计说明书参考资料[1]严蔚敏.数据构造[M].:清华大学.2021[2]齐志昌,谭庆平.软件工程[M].:高等教育,2006.4[3]谭浩强.C程序设计〔第三版〕[M]:清华大学.2021[4]温秀梅.VisualC++面向对象程序设计[M]:清华大学,2005[5]王珊,萨师煊.数据库系统概论[M].:高等教育,2006.5指导教师签字教研室主任签字2021年5月28日1word文档精品文档分享XX理工大学课程设计〔论文〕学生XX:学号:专业班级:课程设计题目:停车场管理系统指导教师评语:成绩:指导教师:李涛2021年6月10日2word文档精品文档分享目录第一章引言1.1系统制作背景1.2系统制作要求第二章需求分析2.1任务概述2.2系统开发原因2.3系统开发任务第三章概要构造设计3.1根本处理流程3.2总体构造第四章详细构造设计4.1程序系统的构造4.2菜单函数4.3初始化模块设计4.4车辆进入函数4.5车辆离开函数第五章测试分析5.1主菜单函数5.2初始化操作.....................................................................................................115.3车辆进入15.4车辆离开并收费...........................................................误!未定义书签。2第六章总结参考文献word文档精品文档分享第一章引言1.1系统制作背景说明:使用此软件系统的名称:停车场管理系统随着计算机技术的开展,在各行各业的应用越来越广泛,停车场管理由原来的人工管理进入计算机系统管理那是个必然趋势,计算机系统管理可以大大提高管理的效率和正确性。1.2系统制作要求设有一个可以停放n辆汽车的狭长停车场,它只有一个大门可以供车辆进〔最先到达的第一辆车放在停车场的最里面〕。如果停车场已放满n辆车,那么后来的车辆只能在停车场大门外的便道上等待,一旦停车场内有车开走,那么排在便道上的第一辆车就进入停车站。停车站内如有某辆车要开走,在它之后进入停车场的车都必须先退出停车站为它让路,待其开出停车场后,这些车辆再依原来的次序进场。每辆车在离开停车场时,都应根据它在停车场内停留的时间长短交费。如果停留在便道上的车未进停车场就要离去,允许其离去,不收停车费,并且仍然保持在便道上等待的车辆的次序。编制一程序模拟该停车场的管理。第二章需求分析2.1任务概述根据题目要求,因为停车场是一个单条的序列,可以用构造体实现;在程序中,需要知道每辆来车的具体停放位置,应提供提示、查找、标记工作。车辆离开要计时计费。另外,每天开场时,停车场要初始化。2.2系统开发原因随着经济的开展和人民生活水平的提高,买车成为人们的奋斗目标之一,当然已经有很多人买起了车。可是随着车辆的增多,车辆的停泊问题也随之出现。这就使得各停车场需要更加先进、更加完善的车辆管理系统。2.3系统开发任务实现停车场的现代化管理,记录车辆信息,动态分配车位,停车费用结算,查看停车场车位的使用状况,退出系统等功能,解决车辆停放难,乱收费等问题。1word文档精品文档分享第三章概要构造设计3.1根本处理流程以堆栈来模拟停车场和以堆栈里的数据元素我设计成汽车的车牌号初始化车站,初始化让路的临时栈,初始化通道车辆到达车场已满,车进便道车场未满,车进车场判断车场是否已满输入车子到达时间,车牌号未满车进入车场判断车场内是否有车无不做任何计算点有输入离开车辆的离开时间进行停车费用的计算此车后面的车辆退出并进入临时栈车子离开图3-12word文档精品文档分享3.2总体构造停车场管理系统车辆到达信息车辆离开信息计算停车费用查看车位使用状况退出系统该该到离每有无车到车离车车车牌达牌开牌达开小空空使腾时时时余余号时号时号用出间间所车车间间的的需位位车位号车位号停车费用新到新到有车来车辆停来车辆在离开时新放便道到来上车等候辆停放图3-23word文档精品文档分享第四章详细构造设计4.1程序系统的构造函数体内包含了界面选那么局部开场出来作为一个独立函数,目的在于系统执行每局部模块后能够方便返回到系统界面。即main()函数写为如下:显示一系列选项功能voidmain()/*主函数*/N{menu();/*菜单函数*/输入n,判断}n是不是1-4?Y根据n的值调用各功能模块函完毕图4-14.2菜单函数voidmenu(){intn,w;do{puts("\t\t**************MENU**************\n\n");puts("\t\t\t1.初始化");puts("\t\t\t2.有车进入");puts("\t\t\t3.有车离开");puts("\t\t\t4.退出");puts("\n\n\t\t*********************************\n");printf("Pleasechoiceyournumber(1-4):[]\b\b");4word文档精品文档分享scanf("%d",&n);if(n<1||n>4)/*对选择的数字作判断*/{w=1;getchar();}elsew=0;}while(w==1);switch(n){case1:chushi();break;/*初始化函数*/case2:jinru();break;/*车辆进入函数*/case3:likai();break;车辆离开函数*/case4:exit(0);/*退出*/}}4.3初始化模块设计【需求分析】该模块是将每一天开场的停车场内和便道车位清零。首先建立场内场外的结构体,构造体内成员即车位的状态。用循环实现车位的致零即可。structchangnei/*场内车道信息*/{intneikong;}chn[N-1];structchangwai/*场外车道信息*/{intwaikong;}chw[M-1];N和M分别是停车场和便道的车位预设值,用宏定义。用户可根据实际情况改变。#defineN100/*预设停车场有100个车位*/#defineM100/*预设便道有100个出位*/voidchushi()/*初始化函数*/{inti,j;for(i=0;i<=N-1;i++)5word文档精品文档分享chn[i].neikong=0;/*将场内车道设置为空*/for(j=0;j<=M-1;j++)chw[i].waikong=0;/*将便道车道设置为空*/printf("\n\n\t\t已初始化\n\n");menu();}函数出示化后将回到菜单界面。4.4车辆进入函数【需求分析】车辆到达后,要指定车辆的停车位置。用户根据菜单函数进入车辆进入模块。按照每辆车的到达次序给予车辆次序号,由0号开场。车辆信息也建立构造体。structcar/*车辆信息*/{intcar_num;/*车辆次序号*/intcar_arr;/*车辆到达时间*/intcar_lef;/*车辆离开时间*/intcar_stay;/*车辆停放位置*/}car[CIXUHAO];其中,CIXUHAO是车辆次序号的宏定义:#defineCIXUHAO1000/*预设车辆次序号。不管车辆到达时停在场内或便道,均依次设置一个次序号,由0开场*/给予车辆次序号之后,用循环判断停车场是否停满,再分别给予选择:场内是否已满已满,将车停在便道未满,指定停车场位置图4-2voidjinru()/*车辆进入函数*/{inti,a;inth=0;printf("\n\n请输入该车次序号〔从0号开场〕:");scanf("%d",&a);for(i=0;i<N;i++){6word文档精品文档分享if(chn[i].neikong==0);/*无车标记0*/if(chn[i].neikong==1)/*有车标记1*/h=h+1;}if(h==N)printf("停车场内已停满,请停在便道上\n");else{car[a].car_stay=h;chn[h].neikong=1;printf("该车应该停在停车场内第道%d〔从0道开场记〕\n",h);printf("请输入该车进停车场时刻〔24小时整点计时〕:\n");scanf("%d",&car[a].car_arr);有车离开}便道上还有车吗?menu();记录该车离开时间}程序执行完后回到菜单。得到停车时间和费用便道上还有车吗?NY返回主令其进场菜单输入次序号和进场时间图4-34.5车辆离开函数【需求分析】假设有一辆车要离开,那么需要记录该车的离开时间,以计算出该车在停车场内的停车时间和应该缴纳的费用。该车离开后,要判断便道上是否有车等待进入,假设无,那么返回菜单。voidlikai()/*车辆离开函数*/{inti,k,choi,time;doublefee;7word文档精品文档分享printf("请输入离开车辆次序号[],并将此车之后的车先全部退出停车场!");scanf("%d",&i);printf("\n请输入离开车辆的离开时刻〔24小时整点计时〕:\n");scanf("%d",&car[i].car_lef);fee=D*(car[i].car_lef-car[i].car_arr);time=car[i].car_lef-car[i].car_arr;printf("次序号为%d的车停车时间%d小时,应收费%f元\n",i,time,fee);printf("\n\n\n请让场内退出的车再依次进场!\n\n\n");printf("便道上现在有车吗?(请选择1或2)\n1.有没有\n");/*因便道上可能没有车,因此要做选择*/scanf("%d",&choi);if(choi==2){menu();}if(choi==1){printf("请让便道上的第一辆车进场\n");printf("该车次序号为:\n");scanf("%d",&k);printf("请输入该车进场时间:\n");scanf("%d",&car[k].car_arr);menu();}}D为预设停车场单位小时费用,用宏定义,便于以后修改。#defineD1.2/*预设车辆停车费为1.2元每小时*/8word文档精品文档分享第五章测试分析5.1主菜单函数图5-15.2初始化操作图5-29word文档精品文档分享5.3车辆进入有车进入图5-3以上分别举例0,1,2三个车的进场情况5.4车辆离开并收费图5-410word文档精品文档分享假设便道上没车,那么退回到主菜单图5-5假设便道上有车图5-611word文档精品文档分享第六章总结首先通过这次课程设计,加强了我的动手和思考解决问题的能力,学到了很多书本上学不到的知识,同时也稳固了对课本的知识,对我将来也是有很大的帮但是在做的过程中还是遇到了很多的问但是实际操作却存在很大的困难。制作界面的时候学到的最主要的耐心,有恒心一切都会变得迎刃而解。通过该实例的实习,要求大家进一步理解和运用构造化程序设计的思想和方法,初步掌握开发一个小型实用系统的根本方法,学会调试较长的程序,学会利用流程图表示算法,进一步掌握和提高利用C语言进展程序设计的能力。12word文档精品文档分享参考文献[1]齐志昌,谭庆平.软件工程[M].:高等教育,2006.4[2]王珊,萨师煊.数据库系统概论[M].:高等教育,2006.5[3]王珊,萨师煊.数据库设计理论与实践[J].计算机应用与软件,1984.2[4]X浩,陈曜东.c#编程实例与技巧[M].:清华大学,2002.1[5]何鹏飞王征实用编程百例[M]:清华大学,2004.313word文档精品文档分享7原程序代码#include<stdio.h>#include<stdlib.h>#include<string.h>#defineN100/*预设停车场有100个车位*/#defineM100/*预设便道有100个出位*/#defineD1.2/*预设车辆停车费为1.2元每小时*/#defineCIXUHAO1000/*预设车辆次序号。不管车辆到达时停在场内或便道,均依次设置一个次序号,由0开场*/voidmenu();voidchushi();voidjinru();voidlikai();structcar/*车辆信息*/{intcar_num;/*车辆次序号*/intcar_arr;/*车辆到达时间*/intcar_lef;/*车辆离开时间*/intcar_stay;/*车辆停放位置*/}car[CIXUHAO];structchangnei/*场内车道信息*/{intneikong;}chn[N-1];structchangwai/*场外车道信息*/{intwaikong;}chw[M-1];voidmain()/*主函数*/{menu();/*菜单函数*/}voidmenu(){intn,w;do{puts("\t\t**************MENU**************\n\n");14word文档精品文档分享puts("\t\t\t1.初始化");puts("\t\t\t2.有车进入");puts("\t\t\t3.有车离开");puts("\t\t\t4.退出");puts("\n\n\t\t*********************************\n");printf("Pleasechoiceyournumber(1-4):[]\b\b");scanf("%d",&n);if(n<1||n>4)/*对选择的数字作判断*/{w=1;getchar();}elsew=0;}while(w==1);switch(n){case1:chushi();break;/*初始化函数*/case车辆进入函数*/case3:likai();break;/*车辆离开函数*/case退出*/}}voidchushi()/*初始化函数*/{inti,j;for(i=0;i<=N-1;i++)chn[i].neikong=0;/*将场内车道设置为空*/for(j=0;j<=M-1;j++)chw[i].waikong=0;/*将便道车道设置为空*/printf("\n\n\t\t已初始化\n\n");menu();}voidjinru()/*车辆进入函数*/{inti,a;inth=0;printf("\n\n请输入该车次序号〔从0号开场〕:");scanf("%d",&a);for(i=0;i<N;i++){if(chn[i].neikong==0);/*无车标记0*/15word文档精品文档分享if(chn[i].neikong==1)/*有车标记1*/h=h+1;}if(h==N)pr

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论