1、 课课 程程 设设 计计 报报 告告 课程名称课程名称 数据数据 结构结构 题题 目目 停车场管理停车场管理 学生姓名学生姓名 班级班级/ /学号学号 一、一、 需求分析需求分析 设停车场是一个可停放设停车场是一个可停放 n n 辆汽车的狭长通道,且只有一个大门可供辆汽车的狭长通道,且只有一个大门可供 汽车进出。汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大汽车进出。汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大 门在最南端) ,若停车场内已停满门在最南端) ,若停车场内已停满 n n 辆汽车,则后来的汽车只能在门外的便道上辆汽车,则后来的汽车只能在门外的便道上 等
2、候,一等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车 要离开时,在它之后进入的车辆必须先退出车场为它让路要离开时,在它之后进入的车辆必须先退出车场为它让路,待该辆车开出大门,待该辆车开出大门 外,其他车辆再按原次序进入车场,外,其他车辆再按原次序进入车场,每辆停放在车场的车在它离开停车场时必每辆停放在车场的车在它离开停车场时必 须按它停留的时间长短交纳费用。试为停车场编制按上述要求进行管理的模拟须按它停留的时间长短交纳费用。试为停车场编制按上述要求进行管理的模拟 程序。程序。 【测试数据】【测试数据】 设设 n=
3、2n=2,输入数据为: (,输入数据为: (A,1,5A,1,5) , () , (A,2,10A,2,10) , () , (D,1,15D,1,15) ,) , (A,3,20A,3,20) , () , (A,4,25A,4,25) , () , (A,5,30A,5,30) , () , (D,2,35D,2,35) , () , (D,4,40D,4,40) ,) , (E,0,0E,0,0) 。) 。其中:其中:AA表示到达;表示到达;DD表示离去;表示离去;EE表示输入结束。表示输入结束。 概要设计概要设计 以栈模拟停车场,以队列模拟车场外的便道。栈以顺序结构实现。队列以以栈模拟
4、停车场,以队列模拟车场外的便道。栈以顺序结构实现。队列以 链表结构实现。每一组输入数据包括:汽车链表结构实现。每一组输入数据包括:汽车“到达到达”或或“离去离去”信息、汽车牌信息、汽车牌 照号码以及到达或离去的时刻。照号码以及到达或离去的时刻。 输出信息: 若是车辆到达, 则输出汽车在停车场内或便道上的停车位置;输出信息: 若是车辆到达, 则输出汽车在停车场内或便道上的停车位置; 若是车辆离去,则输出汽车在停车场内停留的时间和应交纳的费用(在便道上若是车辆离去,则输出汽车在停车场内停留的时间和应交纳的费用(在便道上 停留的时间不收费) 。停留的时间不收费) 。 二、二、 详细设计详细设计 三、三、 程序设计程序设计 1.数据结构设计 /*栈,模拟停车场*/ typedef struct Car1 /车 int numb