链表和队列的简单应用
一、设计内容
[问题描述]模拟停车场如下图所示,停车场是可停放n辆汽车的狭长通道,停车场内只有一条单行线通道可走车,有一个大门可供汽车进出。
[基本要求]
- 进站:若车场内已停满n辆汽车,则后来的汽车只能在门外通道上等候,一旦有车开走,则排在通道上的第一辆车即可开入。
- 出站:当停车场内某辆汽车要离开时,必须按它在停车场停留的时间长短缴纳费用;如果通道前面有汽车在缴纳费用,则要在其后面排队等候。
- 假设出、入便道上一次只能排m辆汽车,本题按n=7,m=3进行模拟,车位位置为:110、111、112、113、114、115、116,时间格式为xxxx,如1220指的是12点20分,时间计算到分钟,每小时停车费3元。
- 假设初始时停车场内停了6辆汽车,没有排队等候进站或出站的汽车。
- 以顺序表模拟停车场,以队列模拟车场外的出入通道。
二、设计过程(40%)
1、请给出采用的数据结构类型,及定义的基本操作
数据结构类型:
//(如采用循环单链表,结构定义如何?)
typedef enum parking{//列举出车位信息
first=110,second,third,fourth,fifth,sixth,seventh
}Parking_space;
typedef struct