停车场管理系统的设计与实现 数据结构课程设计.docx

上传人:王** 文档编号:1634208 上传时间:2024-11-25 格式:DOCX 页数:43 大小:132.23KB
下载 相关 举报
停车场管理系统的设计与实现 数据结构课程设计.docx_第1页
第1页 / 共43页
停车场管理系统的设计与实现 数据结构课程设计.docx_第2页
第2页 / 共43页
停车场管理系统的设计与实现 数据结构课程设计.docx_第3页
第3页 / 共43页
停车场管理系统的设计与实现 数据结构课程设计.docx_第4页
第4页 / 共43页
停车场管理系统的设计与实现 数据结构课程设计.docx_第5页
第5页 / 共43页
停车场管理系统的设计与实现 数据结构课程设计.docx_第6页
第6页 / 共43页
停车场管理系统的设计与实现 数据结构课程设计.docx_第7页
第7页 / 共43页
停车场管理系统的设计与实现 数据结构课程设计.docx_第8页
第8页 / 共43页
停车场管理系统的设计与实现 数据结构课程设计.docx_第9页
第9页 / 共43页
停车场管理系统的设计与实现 数据结构课程设计.docx_第10页
第10页 / 共43页
亲,该文档总共43页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《停车场管理系统的设计与实现 数据结构课程设计.docx》由会员分享,可在线阅读,更多相关《停车场管理系统的设计与实现 数据结构课程设计.docx(43页珍藏版)》请在优知文库上搜索。

1、熬据信相裸程被计题目:停车场管理系统班级:网络工程姓名:朱锦涛学号:E31314037完成日期:2015年口月15日一.需求分析1.停在便道;2 .停在车库;3 .从车库移到便道;4 .从便道移到车库;5 .从车库取车;6 .从便道取车;综上所述可知,总共有4种停车方式。1 .若始终停在便道中,须要在进入便道时以浮点数输入进入时间,当选择6取车时,须要输入在便道中停车的时间。在便道中提车时会显示进入的时间,以及是否须要发票,在计算完停车费用后退出主菜单。F面是菜单,请继续选择或者按。退出了迎理到便道停卒,我们将谒诚为无原务!育输入列达利血窗嬲3膘罐盛蹄制!择道库选里行蜀至wis库is系-S12

2、34S606.小便迫取车。.通出系统元祝圭曷是r.车的发.M票统!的羊要1.*t道S6ss本便34的华再到,甫3趋人择.曾S迎选好俣谢s下面是菜注,请维会选择或者按。退出Iis库is系4s1.2.3.4.s.6.*诩-IT2 .若始终停在车库中,会在进入时检测车库是否满,若不满,允许进入,同样提示检入到达时间,当选择5取车时,须要输入在车库停车时间。提车时,会显示进入的时间,以及是否须要发票,在计算完停车费用后退到主菜单。,请继续迷件或者传。退出面是菜单,请继续选择或者按e退出Is)3245车库停车成功!请输入”走进1停在便也停在半从馔咀杉到华从丰虎取车小便货电车5.从丰盛第64便读思穴艘到丰

3、度堤丰,我们将画诚为您服务!青敏到达军库时间,来堡is库系64i1.H出痛1.2.3.4.S.6.理库路鸣fAH-但并,6迩夜道电军入车牌照!牌照为3!王元.生宰的S.00统雷等5.系库4s善本车32契0三三到:你手使次是企.您迎83晶瞽黑叫球呢氧SJ发惘.1要65需3 .若先在车库停车后又转到便道停车,则会先检测车库是否满了,这是这个状况满意的放大前提,之后须要输入到达车库时间,其实这也没什么用,因为最终计算费用时,只会加上转移位宽的20元费用和在便道停的费用。在提车时会显示有在本停车场转移位五的信息。E:CeMgDebugaenj.1.exe-4 .沙电皆理车库5 .从中座即丰6汕便满成本

4、。.退出系统更4到tr努费,车间4S间停时21时道库.的1三到达的便检到牌达.6,.15-!纪的车辆已经移动到便道I谓继续选择或者按。退出请输入86来进行选择.ff1.2 .像在主库3 .从军虚校到便道4.从快道核同丰厚S.从奉库取孥6A1.!。.退出系统F面是菜单,请缠矮选择或者按。退出I6日同路发要H1.-主有高票财!舌的发.M票统某与要s6晶:的tS4要道45车tt本便21三tSB你M到集甫第.11;.迎Bg的霍好保谢普请你择道库更丰来aH库系6在在车出4 .若先在便道上停车,后又到车库停,原理同3,在此不再赘述C迎,更知到壬庠停至!的爱军到达也的时军是2-1的瞪车啤寞是:4321辐入狗

5、送车库的时间I=!喇军辆已经移动到车库!面是菜单.请继续选择或名按。退出1,请继续选仔或者按。退出,6是Js-不示W21?WtS本43s不喙前I8MW发要wt.s三迎B3saf选好保谢?*J*B*TnTrr-*,!王有高票!.一T古的发.2票统用的珞车要32/票发.8要露.一穴行翦至道库道系r6Hii车U出9停停以K=,退S1234S择道库选僵行进道库蓊eH戛道系F爰wh平便出&tr1.*=J畲12345Gg时库车达至!S的位二.概要设计1 .由于栈的特殊出栈入栈依次,所以全部进入车库的车辆必需遵守“先进后出”的依次来停车和提车,由于栈是依次结构,所以在进入车库时须要检测车库是否饱和,在提车时

6、也须要检测车库是否为空;2 .同时,队列须要满意“先进先出”的思想,但此次试脸用的链式结构,一般来说,不存在饱和状况,但在提车时候须要检测便道是否有车。3 .栈的数据域存放进入车库的时间,车牌,队列节点数据域存放进入便道的时间车牌,设置f1.ag标记是否在停车场内更改停车位置,有更改则矍为1,否则为0。4 .假如一辆车车库移到便道,除了更换进入便道的时间外,车牌号从链表的数据里得到,从便道移到车库也类似。另外,更改位置前停放费用不计入最终的费用。5 .除了要输入进入时间,在更换停车位置时须要揄入进入时间,在最终提车时须要输入离开时间,便利计算总费用。三.具体设计1 .主函数设置两个选择:最外层

7、的选择显示是用户自己选择停车还是系统选择停车位置,最里层的选择为主菜单。2 .进入车库(入栈)voidPush(STACKAGarage,f1.oatc_garage_time.intid,intf1.ag);c_garage_time:进入车库时间id;车牌号f1.ag:显示是否更改过停车位矍3 .离开车库(出栈)voidPop(STACK&Garage.f1.oat&cgarage-time.int&id.int&fIag);将后面三个形参设置为引用调用是为了得到数据域里的数据,供主函数运用4 .进入便道voidEnQueue(1.inkOueue&Shortcut,f1.oatc_sho

8、rtcut_time,intidtintf1.ag);5 .离开便道voidDeOueue(1.inkueeShortcut,f1.oat&c_shortcut_time,int&id,int&f1.ag);将后面三个形参设置为引用调用是为了得到数据域里的数据,供主函数运用。(其实在主函数传地址给调用函数也可以,但是不知道为什么没有试脸胜利。)6 .showmenu()和ShOWChOiCeO都是显示菜单函数7 .8 .f1.oatcharge(f1.oatsum_time,intf1.ag,intinvoice);f1.oat函数是计算费用函数,sum_timesh是在最近一个停车位置的停车

9、时间,在主函数已经由离开时间减去进入时间计算好,f1.ag为标记位,为1,须要多支付20元的管理费用,invoice是须要发票的标记,须要为1,则最终费用为原有费用的基础上增加5,同时用一个浮点型的返回值返回给主函数运用,同时主函数用.2f来限制最终只显示小数点最终两位。四.源程序/*2015年11月15日21:21:37本次试验主要熟识栈和队列的存储方式,同时结合依次表和链表学问具体试验要求见代码底部*/incIude# inc1.ude# incIude# incIude# incIudetypedefstructCar车库(f1.oatc_garage_time;到达在车库时间intid

10、;汽车牌照intf1.ag;/标记位置,在车库为1,在便道为0CAR;typedefstructCar1/便道f1.oatc_shortcut_time;到达便道上的时间,以小时为单位(下同)intid;汽车牌照intf1.ag;structCar_1*next;CAR_1;typedefstructStack/依次栈(CAR*base;栈顶指针CAR*top;栈底指针STACK;此次代码形参力口实参之间是引用调用,故不须要传地址typedefstructQueue链式队列(CAR_1*front;队头指针CAR1*rear;/队尾指针I1.inkQueue;f1.oatprice(f1.oa

11、tz);/计算停车费用voidInitStack(STACKSGarage);/初始化车库的依次栈!boo1.Is_empty(STACKGaraage);boo1.Is_fu1.I(STACK&Garaage);voidPush(STACK&Garage,f1.oatc_garage_time,intid,intf1.ag);voidPop(STACK&Garage,f1.oat&c_garage_time,int&id,int&f1.ag);voidInitQueue(1.inkQueue&Shortcut);voidEnQueue(1.inkQueue&Shortcut,f1.oatc_

12、shortcut_time,intid,intf1.ag);voidDeQueue(1.inkQueue&Shortcut,f1.oat&c_shortcut_time,int&id,int&fIag);voidshowmenu();voidshowchoice();f1.oatcharge(f1.oatsum_time,intf1.ag,intinvoice);计费函数intmain()f1.oatsum_time;在停车场的时间f1.oatc_shortcut_time;/到达便道上的时间,以小时为单位(下同)f1.oatr_shortcut_time;离开便道世间f1.oatc_gara

13、ge_time;到达在车库时间f1.oatJgaragejtime;离开车库时间intid;汽车牌照intinvoice;是否须要发票,须要为1,不须要为0srand(time(0);f1.oatr_c_garage_time;intr_id;intr_f1.ag;f1.oatr_c_shortcut_time;intr_id1;intr_fIag1;STACKGarage;InitStack(Garage);初始化车库1.inkQueueShortcut;InitQueue(Shortcut);初始化便道charchoice2;showchoice();scanf(%c,choice2);w

14、hiIe(choice2!=Q&choice2!=q)switch(choice?)casep:case,P:intchoice1;showmenu();scanf(d,&choice1);whiIe(choice1!=0)switch(choice1)(case 1 :Printf(欢迎您到便道停车,我们将竭诚为您服务!n);Printf(请输入到达时间:n);scanf(%f,&c_shortcut_time);Printf(请输入车牌照(阿拉伯数字);scanfid);EnQueue(Shortcut,c_shortcut_time,id,0);Printf(恭喜!牌照为$d的车主在便道停车胜利!,id);break;case 2 :Printf(欢迎您到车库停车,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 数据结构与算法

copyright@ 2008-2023 yzwku网站版权所有

经营许可证编号:宁ICP备2022001189号-2

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!