数据结构课程设计报告停车场管理系统_建筑-施工组织.pdf
《数据结构课程设计报告停车场管理系统_建筑-施工组织.pdf》由会员分享,可在线阅读,更多相关《数据结构课程设计报告停车场管理系统_建筑-施工组织.pdf(14页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、.专业资料 实验二 停车场管理 班级:A0712 学号:12 姓名:冷清淼 成绩:_ 指导教师签名:_ 一、问题描述 设停车场是一个可停放 n 辆车的狭长通道,且只有一个大门可供汽车进出。在停车场,汽车按到达的先后次序,由北向南依次排列(假设大门在最南端)。若停车场已停满 n 辆车,则后来的汽车需在门外的便道上等候,当有车开走时,便道上的第一辆车即可开入。当停车场某辆车要离开时,在它之后进入的车辆必须先退出停车场为它让路,待该辆车开出大门后,其他车辆再按原次序返回车场。每辆车离开停车场时,应按其停留时间的长短交费(在便道上停留的时间不收费)。设计要求:1模拟上述管理过程。要求以顺序栈模拟停车场
2、,以链队列模拟便道。2从终端读入汽车到达或离去的数据,每组数据包括三项:(1)是“到达”还是“离开”;(2)汽车牌照;(3)“到达”或“离开”的时刻。3与每组输入信息相应的输出信息为:如果是到达的车辆,则输出其在停车场中或便道上的位置;如果是离去的车辆,则输出其在停车场中停留的时间和应交的费用。二、算法说明 1数据结构说明.专业资料 (1)用到两个堆栈:一个为车场栈;另一个为临时栈 temp typedef struct NODE CarNode*stackMAX+1;int top;SeqStackCar;/*模拟车场*/(2)一个队列结构,存储便道车辆信息:typedef struct N
3、ode QueueNode*head;QueueNode*rear;LinkQueueCar;/*模拟便道*/2算法说明(1)功能模块说明:停车场管理系统含有三个模块,即:车辆到达、离开、列表显示 停车场系统车辆到达车辆离开列表显示321 图 1 (2)以模块为单位分析算法 1、“到达”模块:到达时有两种情况,即车场是否满,未满则直接进入停车场;满时,到便道等待。如图 2。有一个大门可供汽车进出在停车场汽车按到达的先后次序由北向南依次排列假设大门在最南端若停车场已停满辆车则后来的汽车需在门外的便道上等候当有车开走时便道上的第一辆车即可开入当停车场某辆车要离开时在它之后进入停留时间的长短交费在便
4、道上停留的时间不收费设计要求模上述管理过程要求以顺序栈模停车场以链队列模便道从终端读入汽车到达或离去的数据每组数据包括三项是到达还是离开汽车牌照到达或离开的时刻与每组输入信息相应的时间和应交的费用二算法说明数据结构说明专业资料用到两个堆栈一个为车场栈另一个为临时栈模拟车场一个队列结构存储便道车辆信息模拟便道算法说明功能模块说明停车场管理系统含有三个模块即车辆到达离开列表显示停车场.专业资料 车辆到达停车场是否满结束进入停车场进入便道是否 图 2 有一个大门可供汽车进出在停车场汽车按到达的先后次序由北向南依次排列假设大门在最南端若停车场已停满辆车则后来的汽车需在门外的便道上等候当有车开走时便道上
5、的第一辆车即可开入当停车场某辆车要离开时在它之后进入停留时间的长短交费在便道上停留的时间不收费设计要求模上述管理过程要求以顺序栈模停车场以链队列模便道从终端读入汽车到达或离去的数据每组数据包括三项是到达还是离开汽车牌照到达或离开的时刻与每组输入信息相应的时间和应交的费用二算法说明数据结构说明专业资料用到两个堆栈一个为车场栈另一个为临时栈模拟车场一个队列结构存储便道车辆信息模拟便道算法说明功能模块说明停车场管理系统含有三个模块即车辆到达离开列表显示停车场.专业资料 2.“离开”模块:离开时,当车库为空时,提示没有车,结束;否则车辆离开。如图3。车辆离开停车场是否空结束车辆离开提示没有车是否否便道
6、是否有车是车进入车场 图 3 3.“显示”模块:显示模块有两个显示选项,即:车场与便道。如图 4。列表显示判断输入值结束显示车场列表显示便道列表2.便道1.车场 图 4 有一个大门可供汽车进出在停车场汽车按到达的先后次序由北向南依次排列假设大门在最南端若停车场已停满辆车则后来的汽车需在门外的便道上等候当有车开走时便道上的第一辆车即可开入当停车场某辆车要离开时在它之后进入停留时间的长短交费在便道上停留的时间不收费设计要求模上述管理过程要求以顺序栈模停车场以链队列模便道从终端读入汽车到达或离去的数据每组数据包括三项是到达还是离开汽车牌照到达或离开的时刻与每组输入信息相应的时间和应交的费用二算法说明
7、数据结构说明专业资料用到两个堆栈一个为车场栈另一个为临时栈模拟车场一个队列结构存储便道车辆信息模拟便道算法说明功能模块说明停车场管理系统含有三个模块即车辆到达离开列表显示停车场.专业资料 三、测试结果 (一)测试用例(说明:测试用例要合理并且足够,既要有正确用例,也要有错误用例,同时检验程序的正确性和强壮性)1第一组测试用例(1)测试输入:停车场的车辆离开,如下表:服务选择 车牌号/车位 到达/离开时间 1 QH058 15:25 1 AB123 18:45 1 EA642 23:15 2 2 0:30 2 1 0:65(错误)(2)测试目的:测试离开方法时间格式控制以及费用计算是否正确。(3
8、)正确输出:第一次离开的是 AB123,应交费 3.45 元。第二次时,当在输入 65 时,应该提示输入错误,重输。(4)实际输出:(5)错误原因:第一个错误是在计算时,一个数字错了;第二个是没有对时间格式控制。(6)当前状态:已改正 2第二组测试用例 有一个大门可供汽车进出在停车场汽车按到达的先后次序由北向南依次排列假设大门在最南端若停车场已停满辆车则后来的汽车需在门外的便道上等候当有车开走时便道上的第一辆车即可开入当停车场某辆车要离开时在它之后进入停留时间的长短交费在便道上停留的时间不收费设计要求模上述管理过程要求以顺序栈模停车场以链队列模便道从终端读入汽车到达或离去的数据每组数据包括三项
9、是到达还是离开汽车牌照到达或离开的时刻与每组输入信息相应的时间和应交的费用二算法说明数据结构说明专业资料用到两个堆栈一个为车场栈另一个为临时栈模拟车场一个队列结构存储便道车辆信息模拟便道算法说明功能模块说明停车场管理系统含有三个模块即车辆到达离开列表显示停车场.专业资料 (1)测试输入:连续 6 辆车到达,如下表:服务选择 车牌号 到达时间 1 A8828 7:56 1 S2296 8:25 1 WW666 8:45 1 HK456 15:50 1 GH999 12:30 1 DD555 13:40 (2)测试目的:测试到达方法与列表显示方法能否正确完成。(3)正确输出:先到达的五辆车先进入停
10、车场,最后到达的一辆在便道等候。(4)实际输出:(5)错误原因:没有作出时间先后的判断,而是先输入先进入。(6)当前状态:待修改 3第三组测试用例(1)测试输入:接上一步输入离开信息,下表:服务选择 离开车位 离开时间 便道车进入时间 2 3 13:30 13:40 有一个大门可供汽车进出在停车场汽车按到达的先后次序由北向南依次排列假设大门在最南端若停车场已停满辆车则后来的汽车需在门外的便道上等候当有车开走时便道上的第一辆车即可开入当停车场某辆车要离开时在它之后进入停留时间的长短交费在便道上停留的时间不收费设计要求模上述管理过程要求以顺序栈模停车场以链队列模便道从终端读入汽车到达或离去的数据每
11、组数据包括三项是到达还是离开汽车牌照到达或离开的时刻与每组输入信息相应的时间和应交的费用二算法说明数据结构说明专业资料用到两个堆栈一个为车场栈另一个为临时栈模拟车场一个队列结构存储便道车辆信息模拟便道算法说明功能模块说明停车场管理系统含有三个模块即车辆到达离开列表显示停车场.专业资料 (2)测试目的:测试离开方法功能是否成功以及便道进入车场是否正确。(3)正确输出:输出 3 号车位的车辆离开信息清单,便道 1 号车进入停车场。(4)实际输出:(5)错误原因:没有错误。(6)当前状态:通过(二)测试结果分析 此停车管理系统基本可能实现一个小的停车场的管理,其“到达”与“离开”方法都相对比较完整,
12、以及结算清单明了。尽管在时间先后上有出现混乱,但当其用到实际应用时,那个时间先后就可以避免了。但在输入数据时,要按照严格的格式输入,否则有可能出现死去或崩溃。若本系统能加上保存功能就更好了,因为一个系统在使用过程中总会关机等,而此系统的缺点却是没有保存功能,关闭之后就要重新建立了。会慢慢完善。有一个大门可供汽车进出在停车场汽车按到达的先后次序由北向南依次排列假设大门在最南端若停车场已停满辆车则后来的汽车需在门外的便道上等候当有车开走时便道上的第一辆车即可开入当停车场某辆车要离开时在它之后进入停留时间的长短交费在便道上停留的时间不收费设计要求模上述管理过程要求以顺序栈模停车场以链队列模便道从终端
13、读入汽车到达或离去的数据每组数据包括三项是到达还是离开汽车牌照到达或离开的时刻与每组输入信息相应的时间和应交的费用二算法说明数据结构说明专业资料用到两个堆栈一个为车场栈另一个为临时栈模拟车场一个队列结构存储便道车辆信息模拟便道算法说明功能模块说明停车场管理系统含有三个模块即车辆到达离开列表显示停车场.专业资料 附录:源代码/系统说明:本系统适应于小型停车场,且停车时间在一天之的短期停放停车场。/在此系统中,车库容量设置为 5,便于测试。在实际使用中可以对容量大小按实际情况设置。#include#include#include#include#define MAX 5/*车库容量,可以根据实际情
14、况改变*/#define price 0.01/*一辆车每分钟费用,可变*/typedef struct time int hour;int min;Time;/*时间结点*/typedef struct node char num10;Time reach;Time leave;CarNode;/*车辆信息结点*/typedef struct NODE CarNode*stackMAX+1;int top;SeqStackCar;/*模拟停车场*/typedef struct car CarNode*data;struct car*next;QueueNode;typedef struct
15、Node QueueNode*head;QueueNode*rear;LinkQueueCar;/*模拟便道*/*方法声明*/void InitStack(SeqStackCar*);/*初始化栈*/int InitQueue(LinkQueueCar*);/*初始化便道*/int Arrival(SeqStackCar*,LinkQueueCar*);/*车辆到达*/void Leave(SeqStackCar*,SeqStackCar*,LinkQueueCar*);/*车辆离开*/void List(SeqStackCar,LinkQueueCar);/*显示信息*/void PRINT
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 课程设计 报告 停车场 管理 系统 建筑 施工 组织
限制150内