1、 I 学学 年年 设设 计计 课程名称:课程名称: 软件工程学年设计软件工程学年设计 实验项目:实验项目: 停车场收费停车场收费管理系统管理系统 姓姓 名:名: XXX 专专 业:业: 计算机科学与技术计算机科学与技术 班班 级:级: XXX 学学 号:号: XXXX 指导教师指导教师 XXX 计算机科学与技术学院计算机科学与技术学院 实验教学中心实验教学中心 XXXX 年 XX 月 XX 日 II 摘要 目前,我国经济逐渐发达,自行车王国逐步向汽车进军。因此,大量的停车 场也随之而至。虽然某些大型停车场在工作中已经开始向计算机化靠拢,但仍不 够完善。而中小型停车场更为稀少,陈旧的管理手段给顾
2、客带来极大的不便,同 时为了提高工作效率及服务质量, 一套完整的停车厂管理系统的出现就十分必要 了。 本次设计,仅为一个简单的小型停车场管理系统。采用 C 语言编写,为 dos 界面。主要强调车辆的进站和出站操作,以及车场和通道之间的相互关系。根据 车场内车道狭长且为一边开口的特点,将车道用先进后出的栈结构来描述。外面 狭长的通道,为先进先出,可采用队列结构,为方便起见,采用链式队列结构来 描述。本程序中的数据对象是汽车,为使操作更方便,将给每辆进车道的汽车编 号,根据编号出场。其中,还包括入场时间、出厂时间、收取费用等项。 关键字:停车场管理系统 栈结构 队列结构 软件工程 III 目录 1
3、 需求分析 . 1 1.1 引言 1 1.1.1 设计目的 1 1.1.2 任务概述 1 1.2 基本要求. 1 1.3 系统用户分析 2 1.4 用数据流程图描述 . 2 2 概要设计 . 4 2.1 设计思想. 4 2.2 实现方法 4 2.3 主要模块 4 2.4 各模块的主要功能及实现 5 2.2.1 车辆到达模块. 5 2.2.2 车辆离开模块. 5 2.2.3 停车场内与通道停放车辆的信息模块 5 2.2.4 获取时间 6 2.5 函数间调用关系 6 3 详细设计 . 8 3.1 界面及各模块详细设计 8 4 系统测试 . 10 4.1 功能测试. 10 4.1.1 车进站时车牌号
4、的测试 10 5 总结 12 5.1 用户手册. 12 5.2 设计体会. 12 参考文献 13 附 14 1 1 需求分析 1.1 引言 1.1.1 设计目的 a.通过课程设计,加深对软件工程思想的理解,能对系统功能进行分析,并设计 合理的模块化结构。 b. 通过课程设计,提高程序开发功能,能运用合理的控制流程编写清晰高效的 程序。 通过课程设计,训练 C 程序调试能力,能将一个中小型各级组织系统联调通过。 c. 通过课程设计,开发一个中小型系统,掌握运用软件工程思想研来发系统全 过程。 d. 通话课程设计,培养分析问题、解决实际问题的能力。 1.1.2 任务概述 设有一个可以停放 20 辆
5、汽车的狭长停车场,它只有一个大门可以供车辆 进出。车辆按到达停车场时间的早晚依次从停车场最里面向大门口处停放(最 先到达的第一辆车放在停车场的最里面) 。如果停车场已放满 20 辆车,则后来 的车辆只能在停车场大门外的通道上等待,一旦停车场内有车开走,则排以便 道上的第一辆车就进入停车场。停车场内如有某辆车要开走,在它之后进入停 车场的车都必须先退出停车场为它让路,待其开出停车场后,这些辆再依原来 的次序进场。每辆车在离开停车场时,都应根据它在停车场内停留的时间长短 交费。如果停留在便道上的车未进停车场时,允许其离去,不收停车费,并且 仍然保持在通道上等待的车辆的次序。编制一程序模拟该停车场的
6、管理 。 要求程序输出每辆车到达后的停车位置(停车场或便道上) ,以及某辆车 离开停车场应交纳的费用和它在停车场内停留的时间。 1.2 基本要求 要求程序输出每辆车到达后的停车位置(停车场) ,以及某辆车离开停车 场应交纳的费用和它在停车场内停留的时间。 2 1.3 系统用户分析 “停车场管理系统”主要是针对车辆存取工作而开发的应用软件。 通常有系 统管理员、停车场车辆管理员和顾客三种用户,他们的使用权限如下: 系统管理员:计算机人员,对系统进行维护。 图书管理员:对停车信息进行数据操作。 顾客:仅限于查阅。 1.4 用数据流程图描述 图 1-1 是根据操作流程建立的流程图。 表 1-1 是车能否进停车场的判定表。 图 1 -1 停车场流程图 车场内车数 20 3 表 1-1 进站停车判定表 车牌号位数 5 2 且2 且top=-1) return 1; else return 0; int isfullstack(SeqStack *s)/判断栈是否为满 if(s-top=Maxsize-1) return 1; else return 0; v