27 / 27
.
数据结构课外实践报告
项 目名称:停车场停车管理系统
所 在 班 级:10级信管1班
小 组成 员:剑楠 迎 可可 吴亮
指 导 教 师:王希杰
起 止 时 间:12月4日——12月22日
项目基本信息
项目名称
停车场停车管理系统
2 / 28
.
项目简介
本项目是对停车场停车管理系统的简单模拟,以完成停车场的停车、出车、收费与查询停车场或便道信息等的功能。
小组成员
剑楠 迎 可可 吴亮
任务分工
可可 100903045:InitStack();Pop();Push();
InitQueue();EnQueue();DeQueue();
getpas();login();
剑楠 100903043:reachtime();leavetime();Arrival();
迎 100903038: Leave();Bill();
吴亮 100903012: List();List1();List2();main();
课外实践评定成绩记录
指导教师意见
系统完成情况:优 良 中 差
报告完成情况:优 良 中 差
答辩评定成绩
团队整体成绩:
成员成绩
综 合 成 绩
问题描述与分析
1、问题描述:
停车场停车管理系统:
3 / 28
.
设一个可以停放n辆汽车停车场,只有一个大门可供汽车进出。汽车在停车场按车辆到达时间的先后顺序停放,若车场已停满n辆车,那么后来的车只能在门外的便道上等候;一旦有车开走,则排在便道上的第一辆车即可开入。当停车场某辆车要离开时,在它之后进入的车辆必须先依次退出车场为它让路,待该辆车开出大门外,其它车辆再按原次序进入车场。每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用。
2、需求分析:
(1)题目中要根据车辆停留时间收费,故在定义结构体时还需要一个时间的结构体用来保存车辆到达和离开的时间。
由于停车场的进出符合栈的“后进先出,先进后出”的操作特点,因此,需要设一个栈来模拟停车场。
(3)根据便道停车的特点,先排队的车辆先离开便道进入停车场,符合队列的“先进先出,后进后出”的操作特点,因此,需要用一个队列来模拟便道。
而中间车辆提出离开停车场,后到达的车辆都须先离开停车场为它让路,然后这些车辆再依原来次序进入停车场,而这个同样符合“后进先出,先进后出”的特点,因此还需一个栈来作为临时保存车辆的地方。
功能模块与数据结构描述
功能模块:
★主要功能:
车辆到达
车辆离开
信息查询
★功能模块图:
4 / 28
.
停车场
停
车
管
理
系统
车
辆
到
达
车
辆
离
开
信
息
查
询
进
入
停
车
场
若
满
,
进
便
道
停
车
场
信
息
查
询
便
道
信
息
查
询
车
辆
出
停
车
场
打
印
账
单
便
道
车
进
停
车
场
管理员
密
码
验
证
数据结构描述:
5 / 28
.
车辆信息的表示
车辆可以看成是一个节点,设计成一个结构题,车辆信息包括:车牌号,车辆到达时间,车辆离开时间,定义如下:
typedef struct node
{
char num[10]; //车牌号
Time reach; //保存车辆到达的时间
Time leave; //保存车辆离开的时间
}CarNode;
时间、栈和队列的定义
时间有小时、分钟和秒表示,即设计三个变量分别表示如下:
typedef struct time
{
int hour;
int min;
数据结构停车场停车管理系统方案 来自淘豆网m.daumloan.com转载请标明出处.