课程设计报告

发布 2022-10-01 04:02:28 阅读 5257

泊车管理系统。

摘要。本系统根据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语言程序设计 系别 专业班级 学号。姓名。课程题目 企业人事管理系统 完成日期 指导老师 年月日。附件。课程设计的内容。企业人事管理系统 本项目的目标是开发一个功能实用,操作简便,简单明了的人事管理系统。能够录入人事的基本资料,在操作上能够完成诸如添加 修改 删除 ...