泊车管理系统。
摘要。本系统根据c++程序设计基础理论课上学习的程序设计中关于数据的输入、输出、与储存方法的基础上,采用链表、结构、循环等方法来达到功能的实现。
关键词:c++、泊车管理、链表、结构。
目录。一、需求分析1
1.1课程要解决的问题1
1.2要求与限制条件1
1.3预期功能与效果1
1.4课程所需的软件平台1
二、整体设计2
2.1功能模块的划分2
2.2数据存储方式的处理2
三、详细设计3
3.1各个模块的功能说明3
3.2程序流程图3
3.3功能函数说明5
3.4函数调用关系5
3.5主要**说明5
四、调试与测试10
五、总结11
附录12一、需求分析。
1.1课程要解决的问题。
泊车管理系统。
假定有n个车位,汽车在到来的时候首先选择车位,然后记录当前停车的时间,在取车的时候再记录取车时间,根据停了多长时间来给出费用。
1.2要求与限制条件。
可以固定停车费用,也可以选择输入停车费用。
查看当前有多少车位,有哪些是空闲的。
选择停车的车位,并记录当前时间。
选择取车,并记录时间。
根据停车时间,计算费用,并打印出明细。
1.3预期功能与效果。
进入系统后模拟车辆到来时可以查看空闲车位,并填写车辆信息进行存车操作。当车辆驶出时,可以根据车辆信息查询存车位置,与根据存车时间并进行付费,最后显示明细。
1.4课程所需的软件平台。
microsoft visual studio 2005
二、整体设计。
2.1功能模块的划分。
要达到泊车管理功能的实现需要四大模块,停车场链表模块,选择操作模块,存车模块,取车模块。
2.2数据存储方式的处理。
通过建立停车场链表在存车时将车辆信息与存车时间存入链表,在取车时将取车时间存入链表,通过链表中的存车时间与取车时间计算存车费用。
三、详细设计。
3.1各模块功能说明。
停车场链表模块。
通过链表将一百个停车位连接起来,运用结构将停车位的信息:车位号、是否有车、车牌号、存车时间、取车时间包含进去。车位号是整型,用布尔型来表示是否有车,有车为1,无车为0。
用字符串来储存车牌号,共五位。用do-while语句来输入时间,如果输错则可以从新输入。
选择操作模块。
通过do-while语句与switch选择语句来选择要执行的操作。在do-while语句中选择要做的操作,如果输入错误则会返回选择操作界面从新选择。用switch语句来选择要做的操作,再通过调用函数来执行操作。
存车模块。利用调用函数,将链表调入函数中,然后遍历链表选出适合的车位,输入选择的车位,若无此车位则返回操作选择界面,若有此空车位,则输入车牌号,利用do-while语句输入时间信息进入链表。
取车模块。同样调用函数,利用遍历链表将符合要求的车辆找出,若无符合的车辆,则返回选择操作界面。若找到符合的车辆则输入取车时间,然后系统会根据存车时间与取车时间来计算存车费用,最后打印出明细。
3.2程序流程图。
3.3功能函数说明。
come(head):自定义函数,将链表调入函数中,通过遍历链表将符合的车位选出,输入选定的车位,再次遍历链表,找到适合的车位,将车辆信息输入链表中。
le**e(head):自定义函数,将链表调入函数中,输入查找条件,通过遍历链表选出符合的车辆,输入取车时间进入链表中。
3.4函数调用关系。
主函数调用come(head)与le**e(head)两个自定义函数。
3.5主要**说明。
struct date
int day;
int hour;
int minute;
struct node
int num;
bool man;
char chepai[5];
date cometime;
date le**etime;
node *next;
建立结构为链表做准备。
node*temp=null,*tail=null,*head=null;
head=new node;
head->num=1;
head->man=0;
head->next=null;
tail=head;
for(int i=2;i<=100;i++)
建立链表。char ch;
doswitch(ch)
case 'c': come(head); break
case 'l': le**e(head); break;
}while(ch!='q');
return 0;
主函数,通过switch语句选择要做的操作。
void come(node*&head)
node*curnode1=head;
while(curnode1)
curnode1=curnode1->next;
遍历链表,选出空车位。
cout<<"请选择要停的车位:";
int num1;
cin>>num1;
node*curnode2=head;
while(curnode2)
curnode2=curnode2->next;
遍历链表,选出符合车位,利用do-while语句存入存车时间。
void le**e(node*&head)
cout<<"请输入车牌号:";
char b[6];
for(int k=0;k<5;k++)
cin>>b[k];
node*curnode3=head;
while(curnode3)
for(int i=0;i<5;i++)
if(curnode3->chepai[i]!=b[i])
break;
if(i==4&&curnode3->man==1)
cout<<"找到该车在第" do cout<<"日:"; cin>>curnode3-> while(curnode3->>31||curnode3-><1); do cout<<"时:"; cin>>curnode3-> while(curnode3->>24||curnode3-><1); do cout<<"分:"; cin>>curnode3-> while(curnode3->>60||curnode3-><1); int a,b,c,d=0; a=curnode3->> b=curnode3->> 洛阳理工学院。课程设计说明书。课程名称。设计课题。专业。班级。学号。姓名。完成日期2014年12月26日。问题描述 小四宋体,行间距单倍行距,每段缩进两个字符。叙述一下设计的内容要求。基本要求 小四宋体,行间距单倍行距,每段缩进两个字符。叙述一下设计的基本要求。测试数据 小四宋体,行间距单倍行距,每... 课程设计总结,课程设计报告。3.尝试应用项目管理软件进行项目进程的规划管理 绘制甘特图,不作硬性要求 二 选题说明。人事管理是企业信息管理的重要部分,面对大量的人事工资信息,财务部门采用人力处理将浪费大量的时间 人力和物力,且数据的准确性低。因此,开发一个界面友好,易于操作的人事工资管理软件进行自动... 学校名。课程设计报告。课程名称 c语言程序设计 系别 专业班级 学号。姓名。课程题目 企业人事管理系统 完成日期 指导老师 年月日。附件。课程设计的内容。企业人事管理系统 本项目的目标是开发一个功能实用,操作简便,简单明了的人事管理系统。能够录入人事的基本资料,在操作上能够完成诸如添加 修改 删除 ...课程设计报告格式 课程设计
课程设计总结,课程设计报告
课程设计 课程设计报告格式