首页 数据结构—停车场管理系统

数据结构—停车场管理系统

举报
开通vip

数据结构—停车场管理系统.武汉理工大学华夏学院课程设计报告书课程名称:《数据结构与算法剖析》课程设计实训名称:泊车场管理系统姓名:陈航院(系):信息工程系专业班级:软件1141学号:指导教师:王云华成绩:教育资料.时间:2015年6月29日至2015年7月3日实训任务书一、题目泊车场管理二、实训的性质和任务数据结构实训是在达成理论课程学习以后安排的综合实践训练,要修业生能依据数据结构中所讲到的各样数据种类以及它们次序和链式储存,在详细的应用中能运用并实现各样数据的各样不一样操作。经过一周的综合实训...

数据结构—停车场管理系统
.武汉理工大学华夏学院课程设计 报告 软件系统测试报告下载sgs报告如何下载关于路面塌陷情况报告535n,sgs报告怎么下载竣工报告下载 书课程名称:《数据结构与算法剖析》课程设计实训名称:泊车场管理系统姓名:陈航院(系):信息工程系专业班级:软件1141学号:指导教师:王云华成绩:教育资料.时间:2015年6月29日至2015年7月3日实训任务书一、题目泊车场管理二、实训的性质和任务数据结构实训是在达成理论课程学习以后安排的综合实践训练,要修业生能依据数据结构中所讲到的各样数据种类以及它们次序和链式储存,在详细的应用中能运用并实现各样数据的各样不一样操作。经过一周的综合实训,使学生加深对怎样将逻辑关系的数据按必定的储存方式储存在计算机内。并为此后的编程打好基础。三、实训的基本要求1、熟习各样数据种类及它们在计算机中的储存方式;、熟习各样数据种类的基本操作,各基本操作的实现。3、能综合运用各样数据种类实现一些详细的问题。四、查核指标及成绩评定实训成绩由下边组成:平常成绩(10%)+作品(70%)+实训报告(20%)=总评成绩作品成绩评定标准:1、所有达成90-1002、主要功能达成70-903、部分功能达成60-704、少部分达成40-605、几乎没做0-40达成期限:年月日指导教师签章:专业负责人签章:教育资料.教课院长签章年月日一、需求说明不过认识到栈和行列是两种特别的线性表是远远不够的,本次实习的目的在于使读者深入认识栈和行列的特点,以便在实质问题背景下灵巧运用它们;同时还将稳固这两种结构的结构方法,接触较复杂问题的递归算法设计。以栈模拟泊车场,以行列模拟车场外的便道,依据从终端读入的输入数据序列进行模拟管理。每一组输入数据包含三个数据项:汽车“抵达”或“离开”信息、汽车牌照号码及抵达或离开的时刻,对每一组输入数据进行操作后的输出数据为:假如车辆抵达,则输出汽车在泊车场内或便道上的泊车地点;假如车离开;则输出汽车在泊车场内逗留的时间和应缴纳的花费(在便道上逗留的时间不收费)。栈以次序结构实现,行列以链表实现。设泊车场内只有一个可停放n辆汽车的狭长通道,且只有一个大门可供汽车出入。汽车在泊车场内按车辆抵达时间的先后次序,挨次由北向南摆列(大门在最南端,最初抵达的第一辆车停放在车场的最北端),若车场内已停满n辆汽车,则此后的汽车只好在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当泊车场内某辆车要走开时,在它以后开入的车辆必须先退出车场为它让路,待该辆车开出大门外,其余车辆再按原序次进入车场,每辆停放在车场的车在它走开泊车场时一定按它逗留的时间长短缴纳花费。试为泊车场编制按上述要求进行管理的模拟程序。教育资料.二、功能描绘泊车场管理系统主要有以下几个功能:1、汽车进入车场增添车辆信息:车牌号、进车时间,假如泊车场已满,则将车辆停入暂时便道内。2、汽车退出车场依据退出车辆的车牌号,进行优先退出,再依据退出时间计算泊车花费。并将暂时便道中的车辆停入泊车场内。3、退出系统三、系统设计及实现软件规格要求合理,鉴于C语言程序设计,在有限空间达到成效最优化。3.1设计要求用C语言实现“泊车场管理系统”。3.2系统功能(1)系统启动后,出现用户界面,人机交互。(2)依据提示输当选项、汽车进入车场、汽车退出车场3、退出系统教育资料.(3)进入车场时录入车辆牌号、和入场时间,输出停靠的泊车地点,当停车场车位满时则停靠在暂时泊车便道内。(4)退出车场时录入车辆牌号、和出场时间,输出泊车总时间,和所停的花费。3.3系统性能:1)时间特征需求在网络连结正常的状况下,查问响应时间为秒级。2)灵巧性当需求发生某些变化时,机票管理应用软件操作方式、数据结构、运行环境基本不会发生变化,变化不过将对应的数据文件内的 记录 混凝土 养护记录下载土方回填监理旁站记录免费下载集备记录下载集备记录下载集备记录下载 改变,或改变过滤条件。3)可用性软件应当尽可能的如数家珍,使一般用户能够使用。4)安全性本套员工信息系统所波及的数据寄存于文件中,在程序中应尽可能的使用调用储存过程的方法免得使某人反编译软件后或入侵到服务器后对数据的结构如数家珍,在程序中应当设置接见时的密码,以保证数据不简单被错改、损坏,并且要常常对数据文件进行备份操作,使得数据一旦遇到损坏或是犯错能够保证实时的恢复数据,将损失降低到最低。(5)可保护性教育资料.(6)应用程序的保护当用户使用本套员工信息系统软件时,碰到了软件自己的逻辑错误时,应当有软件的保护人员对软件进行改正。(7)可转移、可变换性VisualStudio及C编程语言的兼容性很高,在windows95/98.WindowsNT.windows2000.windowsXP等操作系统都能够直接运转。输入项:用户经过软件输入必需的信息,而后保留到数据文件,所输入的信息是经过需求剖析限制的内容,同时也是数据文件中每个字段中储存的内容。输出项:本套员工信息系统软件会将所有需要阅读的数据显示在屏幕上,以便使用户能够阅读到数据文件中的数据或用户想要阅读范围中的数据算法:将用户输入的数据,按字段保留到数据文件中。将数据文件中的数据,按字段提取到用户界面中。必需的去除重复项的算法。保持文件和输出数据的一致性。说明设计:尽可能的将软件中插入说明语句,使语句功能了然。制作的时候应当制作两分,一份是标有说明语句的代码,用来给保护人员、测试人员和开发人员认识开发过程所用,另一份是不带有说明语句的代码,用来最后实质应用中间,这样可以充分的利用有限的时间,降低客户的计算机翻开系统功能的时间,提升客户的使用速度。限制条件:限制必需的条件,以清除因为用户的误操作造成不用要的错误。测试计划:在软件编写的工作进行中间,测试人员便要开始拟订测试计划,此中要包含白盒和黑盒的详细测试项目,及其必需的测试数据和犯错的信息。每次测试的结果要写报告,并就发现和思疑的问题与编写人员联系。测试的结果要让编写人员理解。教育资料.经过文件储存方式将用户所录入的数据保留稳当,充分地描绘了数据间的内在联系,便于数据改正、更新与扩大,同时保证了数据的独立性、靠谱性、安全性与完好性,减少了数据冗余,提升了数据共享程度及数据管理效率。3.4设计思路及框架泊车场的管理流程以下:①当车辆要进入泊车场时,检查泊车场能否已满,假如未满则车辆进入泊车场;假如停车场已满,则车辆进入便道等候。②当车辆要求出栈时,先让在它以后进入泊车场的车辆退出泊车场为它让路,再让该车退出泊车场,让路的所有车辆再按其本来进入泊车场的序次进入泊车场。以后,再检查在便道上能否有车等候,有车则让最初等候的那辆车进入泊车场。四、各功能模块1、交互菜单教育资料.2、汽车进入泊车场13、汽车退出泊车场2教育资料.五、 总结 初级经济法重点总结下载党员个人总结TXt高中句型全总结.doc高中句型全总结.doc理论力学知识点总结pdf 短学期的课程设计是一次特别宝贵的时机,这是一次能够让我们所学的理论与实质相联合的时机。其实个人而言,我领会较深的一点是团队相互帮助学习的过程,自己看书学习的经验,以及从网上以及其余各样门路获取信息和知识的经验。理论与实质相联合的设计,锻炼了我综合运用所学的基础知识,解决实质问题的能力,同时也提升我查阅文件资料、对程序整体的掌握等其余能力水平。并且经过对整体的掌控,对局部的弃取,以及对细节的商酌办理,都使我的能力得到了锻炼,我的各方面经验都获取了极大的丰富。“课程设计是培育学生综合运用所学知识、发现、提出、剖析和解决实质问题锻炼实践能力的重要环节,是对学生实质工作能力的详细训练和观察过程。”在此次课程设计的过程中,我深深地领会到了理论与实践联合的过程,当实践成功时的成就感,从整个过程中我得益匪浅。教育资料.六、附录#include#include#include#include#definesize1//泊车场地点数模拟泊车场的货仓的性质;typedefstructzanlind{intnumber;//汽车车号floatar_time;//汽车抵达时间}zanInode;typedefstruct{zanInode*base;//泊车场的货仓底zanInode*top;//泊车场的货仓顶intstacksize_curren;}stackhead;//货仓的基本操作;voidinitstack(stackhead&L)//结构一个空栈L{L.base=(zanInode*)malloc(size*sizeof(zanlind));if(!L.base)exit(0);//储存分派失败教育资料.L.top=L.base;L.stacksize_curren=0;}voidpush(stackhead&L,zanInodee)//插入元素e为新的栈顶元素{*L.top++=e;L.stacksize_curren++;}voidpop(stackhead&L,zanInode&e)//若栈不为空,删除L的栈顶元素,用e返回其值{if(L.top==L.base){printf("泊车场为空!!");return;}e=*--L.top;L.stacksize_curren--;}模拟便道的行列的性质;typedefstructduilie{intnumber;//汽车车号floatar_time;//汽车抵达时间structduilie*next;}*queueptr;typedefstruct{queueptrfront;//便道的行列的仇家queueptrrear;//便道的行列的队尾intlength;}linkqueue;行列的基本操作;voidinitqueue(linkqueue&q)//结构一个空行列q{q.front=q.rear=(queueptr)malloc(sizeof(duilie));if(!q.front||!q.rear)exit(0);//储存分派失败q.front->next=NULL;q.length=0;}voidenqueue(linkqueue&q,intnumber,intar_time)//把元素的插入行列尾(属性为教育资料.number,ar_time){queueptrp;p=(queueptr)malloc(sizeof(duilie));if(!p)exit(0);//储存分派失败p->number=number;p->ar_time=ar_time;p->next=NULL;q.rear->next=p;q.rear=p;q.length++;}voidpopqueue(linkqueue&q,queueptr&w)//删除q的队头元素w(属性为number,ar_time){queueptrp;if(q.front==q.rear){printf("泊车场通道为空");return;}p=q.front->next;w=p;q.front->next=p->next;q.length--;if(q.rear==p)q.front=q.rear;}floatshijiancha(floatx,floaty)//求时间差的子程序{intshix,shiy,fenx,feny;floatshijiancha;shix=x;shiy=y;fenx=(int)((x-shix)*100);feny=(int)((y-shiy)*100);if(fenx>feny){shijiancha=(shiy-shix-1)+(float)(feny+60-fenx)/100;}elseshijiancha=(shiy-shix)+(float)(feny-fenx)/100;returnshijiancha;教育资料.}voidjinru(stackhead&st,linkqueue&q)//对进入泊车场的汽车的办理;{intnumber;floattime_a;printf("请输入车牌号:");scanf("%d",&number);printf("请输入您进车场的时间(比方说:8点半则输入8.30):");scanf("%f",&time_a);if(st.stacksize_curren<2){zanInodee;e.number=number;e.ar_time=time_a;push(st,e);printf("请把你的车停在%d号车道\n\n",st.stacksize_curren);}else{enqueue(q,number,time_a);printf("泊车场已满,请把你的车停在便道的第%d个地点上",q.length);}}voidlikai(stackhead&st,stackhead&sl,linkqueue&q)//对走开的汽车的办理;{//st货仓为泊车场,sl货仓为倒车场intnumber,flag=1;//q为便道行列floatsh,time_d,arrivaltime,money1;printf("请输入您的车牌号:");scanf("%d",&number);printf("请输入您出车场的时间(比方说:8点半则输入8.30):");scanf("%f",&time_d);zanInodee,q_to_s;queueptrw;while(flag)//找到要开出的车,并弹出泊车场栈{pop(st,e);push(sl,e);if(e.number==number){flag=0;arrivaltime=e.ar_time;sh=shijiancha(arrivaltime,time_d);money1=(int)sh*2+(sh-(int)sh)*100/30;教育资料.}}pop(sl,e);//把暂时货仓的第一辆车(要走开的)去掉;while(sl.stacksize_curren)//把倒车场的车倒回泊车场{pop(sl,e);push(st,e);}if(st.stacksize_curren<2&&q.length!=0)//泊车场有空位,便道上的车开进入泊车场{popqueue(q,w);q_to_s.ar_time=time_d;q_to_s.number=w->number;push(st,q_to_s);printf("车牌为%d的车已从通道进入泊车场,所在的泊车位为%d:\n",q_to_s.number,st.stacksize_curren);}printf("\n收条");printf("车牌号:%d\n",number);printf("++++++++++++++++++++++++++++++\n");printf("进车场时间:%4.2f\n",arrivaltime);printf("出车场时间:%4.2f\n",time_d);printf("逗留时间:%4.2f\n",sh);printf("对付(元)%4.2f\n",money1);printf("++++++++++++++++++++++++++++++\n\n");}voidmain(){intm=100;charflag;//进入或走开的表记;stackheadsting,slinshi;//泊车场和暂时倒车场货仓的定义;linkqueueline;//行列的定义;initstack(sting);//结构泊车场货仓stinginitstack(slinshi);//结构倒车场货仓slinshiinitqueue(line);//结构便道行列linewhile(m){printf("\n******************泊车场管理程序***************");printf("\n*===========================================================*");printf("\n*温馨提示:请车主在24:00以前来取车,给您带来的不便,敬请谅解!*");教育资料.printf("\n*1***汽车进车场2***汽车出车场3***退出程序*");printf("\n*===========================================================*");printf("\n请输入您需要的服务的代号(1、2、3),感谢!\n");scanf("%c",&flag);switch(flag){case'1':jinru(sting,line);break;//汽车进车场case'2':likai(sting,slinshi,line);break;//汽车出车场case'3':exit(0);}m--;}}教育资料
本文档为【数据结构—停车场管理系统】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
秋高气爽
暂无简介~
格式:doc
大小:350KB
软件:Word
页数:16
分类:
上传时间:2023-02-26
浏览量:2