停车场管理实验报告

停车场管理实验报告

ID:10795844

大小:135.20 KB

页数:11页

时间:2018-07-08

停车场管理实验报告_第1页
停车场管理实验报告_第2页
停车场管理实验报告_第3页
停车场管理实验报告_第4页
停车场管理实验报告_第5页
资源描述:

《停车场管理实验报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、河北工业大学《数据结构》课程实验实验报告题目:停车场管理专业:软件班级:102姓名:完成日期:2012-5-19一、试验内容设停车场是一个可以停放n辆汽车的狭长通道,且只有一个大门可供汽车进出。汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放在车场的最北端),若车场内已经停满n辆汽车,则后来的汽车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车要离开时,在它之后进入的车辆必须先退出场为它让路,待该辆车开出大门外,其他车辆再按次序进入车场,每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用,试

2、为停车场编制按上述要求进行管理的模拟程序。二、试验目的(1)深入了解栈和队列的特性,掌握栈和队列的存储方法。(2)掌握栈和队列的基本操作,如初始化、入栈(队列)、出栈(队列)等,并能在实际问题背景下灵活运用。三、流程图各主要函数的流程图:A_cars:printf("Theparkingplaceisfull!");s->top!=n-1(s->top)++;QNODE*t;Judge_Output:(*r).bb=='E'

3、

4、(*r).bb=='e'printf("STOP!");YN(*r).bb=='P'

5、

6、(*r).bb=='p'YNprintf("Thenumberof

7、parkingcarsis%d",(s->top)+1);(*r).bb=='W'

8、

9、(*r).bb=='w'w'YNprintf("Thenumberofwaitingcarsis%d",q->geshu)(*r).bb=='W'

10、

11、(*r).bb=='w'w'A_cars(s,q,*r);YN(*r).bb=='W'

12、

13、(*r).bb=='w'w'ND_cars(s,q,*r);YERROR;main:i=0SqStack*s;`i

14、码#include/*调用的头文件库声明*/#include#defineMAXSIZE14#definen2#definefee10structcar/*用该结构体来存放车的状态,编号和时间信息*/{charbb;intnum;inttime;};typedefstructstack/*用该栈来模拟停车场*/{structcarG[n];inttop;}SqStack;structrangweicar/*用该结构体来存放临时让出的车辆的编号以及时间信息*/{intnum;inttime;};typedefstructstackk/*用该栈来模拟临时

15、让出的车辆的停靠场地*/{structrangweicarH[MAXSIZE];inttopp;}SqStackk;#defineQNODEstructQnodeQNODE{intdata;/*链队结点的类型*/QNODE*next;};typedefstructlinkqueue/*用该链队来模拟便道*/{QNODE*front,*rear;intgeshu;}LinkQueue;voidA_cars(SqStack*s,LinkQueue*q,structcara)/*该算法实现对车辆状态为到达的车辆的操作*/{QNODE*t;if(s->top!=n-1)/*若停车场还没有满,则车

16、进停车场,并存入车辆的状态,车牌编号和到达时间信息*/{(s->top)++;(s->G[s->top]).bb=a.bb;(s->G[s->top]).num=a.num;(s->G[s->top]).time=a.time;}else{printf("Theparkingplaceisfull!");/*若停车场已满,车进便道,并显示该车的车牌编号,同时记录便道车辆数目*/t=(QNODE*)malloc(sizeof(QNODE));t->data=a.num;t->next=NULL;q->rear->next=t;q->rear=t;printf("停车场已满,车进便道,并

17、显示该车的车牌编号:%d",q->rear->data);q->geshu++;}}intD_cars(SqStack*s,LinkQueue*q,structcard)/*该算法实现车辆状态为离开的车辆的操作*/{inti,j,l;floatx,y;QNODE*p;SqStackk*k;if(d.num==(s->G[s->top]).num)/*若待离开车为最后进停车场的车的情况*/{x=float(d.time-(s->G

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。