行业

智慧交通 智慧商业 智慧安全

钱柜娱乐停车场管理系统程序设计书

  停车场管理系统程序设计书_其它_总结/汇报_实用文档。精品 Word 文档 欢迎下载 停车场管理系统程序设计书 一、程序设计目标 1、通过本次课设进一步的了解栈和队列等有关概念。掌 握栈和队列的建立,掌握栈和队列的基本操作,深入了解栈和 队列的特性,以便

  精品 Word 文档 欢迎下载 停车场管理系统程序设计书 一、程序设计目标 1、通过本次课设进一步的了解栈和队列等有关概念。掌 握栈和队列的建立,掌握栈和队列的基本操作,深入了解栈和 队列的特性,以便在解决实际问题中灵活运用它们。 2、复习巩固C语言知识。通过C语言课程设计,使我们了 解高级程序设计语言的结构,掌握基本的程序设计过程和技巧, 更加了解C语言的好处和其可用性。进一步加深对C语言、数 据结构、离散数学等基础技能的理解和掌握。 3、掌握基本的分析问题和利用计算机求解问题的能力, 具备初步的高级语言程序设计能力。为后续各门计算机课程的 学习和毕业设计打下坚实基础。 4、掌握工程软件设计的基本方法,强化上机动手编程能 力,闯过理论与实践相结合的难关!让我们有一个既动手又动 脑,独立实践的机会,锻炼我们的分析解决实际问题的能力。 同时增加了同学之间的团队合作精神!更加体会到工作中团队 合作的重要性和必要性! 二、 问题描述 ※按照题目要求,我们把程序分为三个模块 a.车辆到达模块:设有一个可以停放 n 辆汽车的狭长停车 场,它只有一个大门可以供车辆进出。车辆按到达停车场时间的 早晚依次从停车场最里面向大门口处停放(最先到达的第一辆 车放在停车场的最里面)。如果停车场已放满 n 辆车,则后来的 车辆只能在停车场大门外的便道上等待。 b.车辆离开模块:一旦停车场内有车开走,则排在便道上 的第一辆车就进入停车场。停车场内如有某辆车要开走,在他 可编辑和修改 精品 Word 文档 欢迎下载 之后进入停车场的车都必须先退出停车场为它让路,待其开出 停车场后,这些车辆再依原来的次序进场。每辆车在离开停车 场时,都应依据它在停车场内停留的时间长短交费。如果停留 在便道上的车未进停车场就要离去,允许其离去,不收停车费, 并且仍然保持在便道上等待的车辆的次序。 c.显示模块:当需要列表显示时,系统判断输入值(1-3), 如果输入 1,则调用显示车场列表,如果输入 2,则调用显示 便道信息,如果输入 3,则返回主菜单。 三、 需求分析 这个程序的关键是车辆的进站和出站操作,以及车辆的通道之 间的相互关系。由于停车场是一个很窄的、一边开口的车道,先进 后出,类似数据结构中的栈结构,故车场用顺序栈这种数据结构来 描述。 外面的狭长的通道,先进后出,通道的车辆可以随时退出,故 可用链式队列结构来描述。考虑到车场和通道在整个程序中都要用 到,故把这两个变量定义为全局变量。本程序中的数据对象是汽车, 可以认为车牌号是每个元素的关键项,不能重复,和现实中的一样, 车的入场时间以及出场时间都将作收费项目来考虑。在通道上的车 由于没有入场,故不用收取费用。 ※功能实现方式: (1).以栈 S 作为停车场,栈 S1 作为让路的临时停车点,队列 Q 作为车等待时用的便道,stack[Max+1]作为车场能够容纳的车辆 数,num[10]作为车所在位置的编号,并且限定车场最多能够容纳 10 辆车. (2).用户根据系统所规定并提示的要求输入有关内容,车场 所能容纳的车辆数由收费人员来确定,车辆离开时,车主还可以得 到收据,便于收费的管理使用,并且系统程序所提供的一些信息可通 过特殊硬件显示出来,供车主了解信息,准确有效的停车。 可编辑和修改 精品 Word 文档 欢迎下载 (3).程序能够显示当前存车信息以及等待车的信息,便于管 理人员对车辆进行管理,并且能够给等待中的车提供当前车场占用 情况信息,便于他们能够及时的停车。 (4).程序执行的命令为:输入进站信息-输入出站信息-打印 收据 (5).每组输入信息相应的输出信息为:如果是到达的车辆,则 输出其在停车场中或便道上的位置;如果是离去的车辆,则输出其 在停车场中停留的时间和应交的费用。 四、概要设计 1.数据结构说明 用到两个顺序栈:一个为车场栈;另一个为临时栈 temp typedef struct Node { CarNode *stack[MAX+1]; int top; }SeqStackCar; 一个链式队列结构,存储便道车辆信息: typedef struct Node { QueueNode *head; QueueNode *rear; }LinkQueueCar; 2.算法说明 终端汽车读入数据包含三项: a.是“到达”还是“离开”; b.汽车牌照号码; c.“到达”或“离开”的时刻。 可编辑和修改 精品 Word 文档 欢迎下载 3.功能模块说明 停车场管理系统含有三个模块,即:车辆到达、离开、列表显示 停车场系统 1 3 2 车辆到达 以模块为单位分析算法 车辆离开 列表显示 (图 1) a.车辆到达模块:到达时有两种情况,即车场是否满,未满则直 接进入停车场;满时,到便道等待。如图 2。 车辆到达 停车场是否满 否 进入停车场 是 进入便道 结束 (图 2) b.车辆离开模块:离开时,当车库为空时,提示没有车,结束; 可编辑和修改 否则车辆离开。如图 3。 车辆离开 停车场是否空 否 车辆离开 精品 Word 文档 欢迎下载 是 提示没有车 是 便道是否有车 车进入车场 否 结束 (图 3) c.显示模块:显示模块有两个显示选项,即:车场与便道。如 图 4。 列表显示 判断输入值 1.车场 显示车场列表 2.便道 显示便道列表 可编辑和修改 结束 精品 Word 文档 欢迎下载 (图 4) 4、主要要点说明 a.主程序 Void main() { 声明定义 调用栈与队列的函数 主信息(输入初始操作信息) } b.栈---实现栈抽象数据类型 c.队列---实现队列抽象数据类型 d.结构体---用于对对象及变量的管理 它们之间的调用关系如下: 主程序 ↓ 结构体 ↓ 栈 ↓ 队列 五、详细设计(实现程序模块的具体算法) 1.菜单选项 应用 switch 分支循环对应的数字类别,执行相应的系统功能。