模拟停车场管理班级:物联网 姓名:XXX 学号:XXXXXXX 日期:4 月 9 日一、需求分析 1、程序的功能描述 根据从终端输入的数据序列进行模拟管理
1)狭道停车用栈来实现,并且用的顺序栈,等车位的便道用队列来实现,并用链 式存储
2)每一组输入信息包含三个数据项,汽车的“到达"和“离去”的信息,汽车牌 照号码,汽车“到达”或“离去”的时刻
3)对每一组输入数据进行操作后的输出信息为:若是车辆到达,则输出车辆在停车场内或便道上的停车位置;若是车子离去,则输出车辆在停车场内停留的时间和缴纳的费用
(假设在便道等车的时间不收费) 4)选作内容:(1)便道也是要收费的,仅仅比狭道收费便宜点
(2)狭道上的车可以直接开走
2、输入/输出的要求 首先选择操作的模块,根据提示输入车牌和到达时间,程序会告知是否停满或者停车车位
车牌为 10 个字符以内的字符串,时间的输入中间有冒号把时分隔开
3、测试数据 1 苏 D543 1:10 1 苏 Q123 1:20 1 苏 D145 1:30二、概要设计 1、本程序所用的抽象数据类型的定义typedef struct NODE{CarNode *stack[MAX+1]; int top;}SeqStackCar;//狭道的堆栈顺序存储typedef struct car{CarNode *data; struct car *next;}QueueNode;//队列的链式存储typedef struct Node{QueueNode *head; QueueNode *rear;}LinkQueueCar;//便道上等候的队列定义2、主模块的流程及各子模块的主要功能车辆到达:int Arrival(SeqStackCar *Enter,LinkQueueCar *W)首先定义一个栈和队列的结构体指针为:*p , *t