《数据结构》课程设计报告(2024 --2024 学年 第 2 学期)题 目:___停车场管理系统_____1 设计容、任务与具体要求 1.1 设计容设停车场是一个可停放 n 辆汽车的狭长通道,且只有一个大门可供汽车进出。汽车在停车场按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放在车场的最北端),若车场已停满 n 辆汽车,则后来的汽车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场某辆车要离开时,在它之后进入的车辆必须先退出车场为它让路(假定停车场没有留出车辆进出的通道),待该辆车开出大门外,其他车辆再按原次序进入车场,每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用。试为停车场编制按上述要求进行管理的模拟程序。1.2 设计任务与具体要求1、以栈模拟停车场,以队列模拟车场外的便道,根据从终端读入的输入数据序列进行模拟管理。每一组输入数据包括三个数据项:汽车“到达”或“离去”信息、汽车牌照以与到达或离去的时刻。对每一组输入数据进行操作后的输出信息为:若是车辆到达,则输出汽车在停车场或便道上的停车位置;若是车辆离去,则输出汽车在停车场停留的时间和应交纳的费用(在便道上停留的时间不收费)。栈以顺序结构实现,队列以链表结构实现。2、2 概要设计 2.1 该系统的功能简介① 主函数:介绍程序的基本功能,并给出程序功能所对应的键盘操作的提示,如车到来或离去的表示方法,停车场或者便道的 状态的查询方法提示等。② 车辆到达 Arrival 函数:首先要查询当前停车场的状态,当停车场非满时,将其驶入停车场(入栈),开始计费;当停车场满时,让其进入便道等候(入队)。③ 车辆离开 Leave 函数:当某辆车要离开停车场的时候,比它后进停车场的车要为它让路,(即将这些车依次“压入”辅助栈), 开走请求离开的车,再将辅助栈中的车依次出栈,“压入”停车场;同时根据离开的车在停车场停留的时间进行收费;最后查询是否有车在便道等候,若有,将便道上的第一辆车驶入停车场(先出队,再入栈),开始交费。④ 车辆信息 List 函数:用来在屏幕上显示停车位和便道上各位置的状态。2.2 总体程序框图2.3 各个模块之间的主要关系① 此停车场管理系统,主要分为以下若干模块: 主函数结束主函数 主函数 界面到达离开列表退出消费额列表 1列表 2离开 列表首先定义用来模拟停车场的堆栈以与用来...