2022年停车场管理系统[] .pdf
《2022年停车场管理系统[] .pdf》由会员分享,可在线阅读,更多相关《2022年停车场管理系统[] .pdf(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、停车场管理系统【需求分析 】1. 停车场是一个可以停放N 辆汽车的通道 , 汽车按照到达时间的先后顺序进车场, 用栈模拟停车场 , 栈中元素包含汽车两个数据项: 汽车的牌照号码和汽车进入车场的时刻 . 2. 如果车场内已经停满N 辆车,则后来的车只能停放在车场外面的通道上,用队列模拟停车场外面的便道,先进的车辆先出的原则 . 3. 按照从终端输入的输入数据序列进行模拟管理,每一组输入的数据要包括: 汽车到达或者离开的信息,汽车牌照号码以及到达离开的时刻.数据操作后输出的信息为 : 若是到达则输出汽车在停车场的位置. 若是离开 ,则输出汽车在停车场的停留时间和应该交纳的费用. 4. 需要另外设一
2、个栈,历史停放为给要离开的汽车让路而从停车场退出来的汽车,也用顺序存储结构实现 . 【代码分析 】1. 概要设计typedef struct char type; char num5; int time; elemType,*LelemType; typedef struct LelemType base; LelemType top; int stacksize; sqstack; /存储车场停车信息的栈typedef struct QNode elemType data; struct QNode *next; QNode,*Queueptr; typedef struct Queuept
3、r front; Queueptr rear; LinkQueue; /存储便道停车信息的队列typedef struct LNode char ch5; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 9 页 - - - - - - - - - struct LNode *next; LNode,*ListType; typedef struct ListType head,tail; int size; tagList; /存储场内车牌号的链表2. 详细设计主函数in
4、t main() void Readmessage(char &c) char h; char num5; int time=0; again1:; coutc; if(c!=a&c!=d&c!=e) cout 输入不正确 , 请按要求重新输入 !endl;goto again1; if(c=d) coutendl;goto again3; if(c=e) goto end; coutendl; again2:; couth; if(h!=p&h!=t&h!=c) cout 输入不正确 , 请按要求重新输入 !type=h; coutendl; again3:; coutnum; if(c!=
5、d) if(judgenum(num) cout 该车牌已存在 ! 请重新输入 !num,num); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 9 页 - - - - - - - - - coutendl; again4:; if(c=a) cout 5.请输入该车进车场时间:; else couttime; if(timetime) cout 时间必须递增 ! 请重新输入 !time=time; coutendl; end:; void Interpret(cha
6、r c) if(c=a) if(garage.top-garage.basegarage.stacksize) Push(garage,*elem); cout 请停在车场第 i 号车位 !endl; cout -; i+; else enQueue(waitway,*elem); cout 请停在便道 !endl; coutnum,elem-num)&k=i) q=waitway.front; k=1; while(strcmp(s-num,elem-num)&kj) q+;k+; if(knum); if(+s!=garage.top) giveway.base=s; giveway.to
7、p=garage.top; giveway.stacksize=giveway.top-giveway.base; cout 为该车让路,须从入口退出车场的车辆顺序: ; g=giveway.top; while(g!=giveway.base) g-; cout num; coutendl; else cout 不必让路 , 该车可直接从车场开走!endl; s-; g=giveway.base; while(g!=giveway.top) *s=*g;s+;g+; garage.top-; if(waitway.front!=waitway.rear) /便道上的车辆数目不为零 if(de
8、Queue(waitway,e) Push(garage,e); cout 请 便 道 内 车 牌 为e.num 的 车 进 车 场 , 停 在 第 i号 车 位 ! endl; cout _num); if(q!=waitway.front) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 9 页 - - - - - - - - - LinkQueue Q; InitQueue(Q); Queueptr p=waitway.front; do enQueue(Q,p-d
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年停车场管理系统 2022 停车场 管理 系统
限制150内