停车场管理系统C++课程设计报告报告.docx

上传人:b****1 文档编号:13598720 上传时间:2023-06-15 格式:DOCX 页数:36 大小:363.35KB
下载 相关 举报
停车场管理系统C++课程设计报告报告.docx_第1页
第1页 / 共36页
停车场管理系统C++课程设计报告报告.docx_第2页
第2页 / 共36页
停车场管理系统C++课程设计报告报告.docx_第3页
第3页 / 共36页
停车场管理系统C++课程设计报告报告.docx_第4页
第4页 / 共36页
停车场管理系统C++课程设计报告报告.docx_第5页
第5页 / 共36页
停车场管理系统C++课程设计报告报告.docx_第6页
第6页 / 共36页
停车场管理系统C++课程设计报告报告.docx_第7页
第7页 / 共36页
停车场管理系统C++课程设计报告报告.docx_第8页
第8页 / 共36页
停车场管理系统C++课程设计报告报告.docx_第9页
第9页 / 共36页
停车场管理系统C++课程设计报告报告.docx_第10页
第10页 / 共36页
停车场管理系统C++课程设计报告报告.docx_第11页
第11页 / 共36页
停车场管理系统C++课程设计报告报告.docx_第12页
第12页 / 共36页
停车场管理系统C++课程设计报告报告.docx_第13页
第13页 / 共36页
停车场管理系统C++课程设计报告报告.docx_第14页
第14页 / 共36页
停车场管理系统C++课程设计报告报告.docx_第15页
第15页 / 共36页
停车场管理系统C++课程设计报告报告.docx_第16页
第16页 / 共36页
停车场管理系统C++课程设计报告报告.docx_第17页
第17页 / 共36页
停车场管理系统C++课程设计报告报告.docx_第18页
第18页 / 共36页
停车场管理系统C++课程设计报告报告.docx_第19页
第19页 / 共36页
停车场管理系统C++课程设计报告报告.docx_第20页
第20页 / 共36页
亲,该文档总共36页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

停车场管理系统C++课程设计报告报告.docx

《停车场管理系统C++课程设计报告报告.docx》由会员分享,可在线阅读,更多相关《停车场管理系统C++课程设计报告报告.docx(36页珍藏版)》请在冰点文库上搜索。

停车场管理系统C++课程设计报告报告.docx

停车场管理系统C++课程设计报告报告

科技学院

 

《面向对象程序设计》

课程设计报告

 

学院:

电气与信息工程学院专业班级:

计科升2013-01

学生:

廖帅林学号:

2015520134

设计地点(单位)_____I514_______设计题目:

_停车场管理系统设计___

完成日期:

2016年1月8日

指导教师评语:

_____________________________________

_________________________________________________________________________________________________________________________________________________________________________________________________________

成绩(五级记分制):

________________指导教师(签字):

________________

 

科技学院

课程设计任务书

设计题目:

停车场管理系统设计

学生

廖帅林

课程名称

面向对象课程设计

专业班级

计科升2013-01

地点

I514

起止时间

12月28日~1月8日

设计容及要求

1)问题描述

定义车辆类,属性有车牌号、颜色、车型(小汽车、小卡、中卡和大卡)、到达的时间和离开的时间等信息和相关的对属性做操作的行为。

定义一个管理类,完成对停车场的管理。

停车场的具体要求:

设停车场是一个可停放n辆汽车的狭长通道,且只有一个大门可供汽车进出。

汽车在停车场按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放在车场的最北端),若车场已停满n辆汽车,则后来的汽车只能在门外的便道上等待,一旦有车开走,则排在便道上的第一辆车即可开入;每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用。

2)功能要求

(1)添加功能:

程序能够添加到达停车场的车辆信息,要求车辆的车牌号要唯一,如果添加了重复编号的记录时,则提示数据添加重复并取消添加。

(2)查询功能:

可根据车牌号、车型等信息对已添加的停车场中的车辆信息进行查询,如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息;

(3)显示功能:

可显示当前系统中所有车辆的信息,每条记录占据一行。

(4)编辑功能:

可根据查询结果对相应的记录进行修改,修改时注意车牌号的唯一性。

(5)删除功能:

主要实现对已添加的车辆记录进行删除。

如果当前系统中没有相应的人员记录,则提示“记录为空!

”并返回操作。

(6)统计功能:

能统计停车场中车辆的总数、按车型、按到达时间进行统计等。

3)问题的解决方案

根据系统功能要求,可以将问题解决分为以下步骤:

(1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;

(2)分析系统中的各个实体及它们之间的关系;

(3)根据问题描述,设计系统的类层次;

(4)完成类层次中各个类的描述;

(5)完成类中各个成员函数的定义;

(6)完成系统的应用模块;

(7)功能调试;

(8)完成系统总结报告。

根据题目要求,运用所学知识,完成设计和实现工作,并按照书写规,撰写课程设计报告。

设计

参数

(1)系统分析、设计正确。

(2)结果以图表方式显示。

(3)界面简洁、美观。

(4)报告格式规。

进度

要求

周一:

明确设计任务,学习相关基础知识

周二:

熟悉各知识点,进行基础练习

周三:

根据题目要求,进行设计和实现

周四:

根据题目要求,进行设计和实现

周五:

程序测试

参考资料

[1]RichardJohnsonbaugh.MartinKalin.《面向对象程序设计—C++语言描述》.机械工业.2009年

[2]钱能.《C++语言程序设计教程》.清华大学.2005年

其它

说明

1.本表应在每次实施前一周由负责教师填写二份,院系审批后交院系办备案,一份由负责教师留用。

2.若填写容较多可另纸附后。

3.一题多名学生共用的,在设计容、参数、要求等方面应有所区别。

教研室主任:

王双明指导教师:

焦晓军2015年1月8

摘要

该系统是用C++语言编写的一个简单的操作系统,在汇编环境下,用户可以按照界面的提示,选择不同的功能。

该车库管理系统主要的设计方法是定义了两个类(Car和Manage)。

Car类中定义了一些Car的基本属性,得到信息的函数和输出信息的函数,Manage(管理类)中主要实现车辆信息的添加,删除,查询,显示,统计和修改功能。

该系统可以大大的节省管理者的时间和资源,也对所管理的对象的效率是非常高的。

关键词:

C++停车场管理系统函数功能

 

第一章软件需求分析

1.1软件需求

本程序是运用C++语言编写的系统。

其功能是对在库的车辆信息进行有效的管理,所以该系统主要面对的是停车场管理员。

停车场管理员可以根据本系统的操作提示完成对所需要管理的对象进行有效的管理。

在本系统中有很多功能,例如可以输入新的车辆信息,包括车辆的车牌、车的颜色、车的入库时间、车型、停车所交的费用等等。

所以本系统不失为一个管理车辆的有效系统,尤其是面对对车辆需要有效管理的停车场、车站、二手车交易市场等等。

1.2系统中各功能函数的关系图

主界面与各功能函数的关系:

 

图1.1主界面与各功能函数关系图

添加函数功能:

 

判断不重复则添加

 

图1.2添加函数功能图

 

查询函数功能:

 

图1.3查询函数功能图

显示函数功能:

 

图1.4显示函数功能图

 

 

图1.5库为空显示函数功能图

编辑函数功能:

 

图1.6编辑函数功能图

 

删除函数功能:

 

 

图1.7删除函数功能图

 

第二章系统分析与设计

2.1系统运用的语言

本系统主要是运用面对对象C++语言所编写的软件。

运用了类的定义以及一些成员函数等等。

本系统中主要运用面对对象C++语言对本系统的主要对象car进行类的定义,然后再运用Manage类的一些函数功能来实现。

2.2类的定义

其中Car中的类成员如下:

表2-1Car类成员表

stringnumber;

车牌号(受保护成员变量)

stringcolor;

车的颜色(受保护成员变量)

stringtype;

车型(受保护成员变量)

stringintime;

车入库时间(受保护成员变量)

stringouttime;

车出库时间(受保护成员变量)

voidsetouttime(strings)

设置出库时间函数

stringGetouttime()

得到出库时间

voidsetnumber(strings)

设置车牌号函数

stringGetnumber()

得到车牌号函数

voidsetcolor(strings)

设置车的颜色

stringGetcolor()const

得到车得颜色

voidsetintime(strings)

设置入库时间函数

voidsettype(strings)

设置车型函数

stringGettype()

得到车型原函数

stringGetintime()

得到入库时间函数

voidoutput()

输出成员变量的函数

voidinput()

输入信息的函数

Manage中类成员如下:

表2-2Manage类成员表

intcount

下标(私有成员变量)

intcapacity

最大存储容量(私有成员变量)

boolAdd()

添加函数

VoidDisplay()

显示函数

VoidSearch()

查找函数

VoidDelete()

删除函数

VoidEdit()

编辑函数

VoidTotle()

统计函数

Carcar[500]

定义一个Car类的对象

2.3类中各函数执行的流程图

添加函数流程图:

 

Y

N

NN

Y

图2

2.1添加函数流程图

显示函数流程图:

N

Y

 

2.2显示函数流程图

 

编辑函数流程图:

N

Y

 

 

2.3编辑函数流程图

 

删除函数流程图:

 

N

 

Y

 

 

2.4删除函数流程图

 

按照本系统的功能,首先定义了一个类Car,其代码如下:

classCar

{

protected:

stringnumber;//车牌号

stringcolor;//车的颜色

stringtype;//车型

stringintime;//车的入库时间

stringouttime;//车出库时间

public:

voidinput()

{

cout<<"请输入车牌号:

";

cin>>number;

cout<<"请输入车的颜色:

";

cin>>color;

cout<<"请输入车的类型:

";

cin>>type;

cout<<"请输入车进入库的时间:

";

cin>>intime;

cout<<"请输入车出库的时间:

";

cin>>outtime;

}

voidoutput()

{

cout<<"车牌号:

"<

"<

"<

"<

"<

}

voidsetintime(strings)

{

intime=s;

}

stringGetintime()//得到入库得到时间函数

{

returnintime;

}

voidsetouttime(strings)

{

outtime=s;

}

stringGetouttime()//得到出库时间函数

{

returnouttime;

}

voidsetnumber(strings)

{

number=s;

}

stringGetnumber()//得到车牌号函数

{

returnnumber;

}

voidsetcolor(strings)

{

color=s;

}

stringGetcolor()const//得到颜色函数

{

returncolor;

}

voidsettype(strings)

{

type=s;

}

stringGettype()//得到类型函数

{

returntype;

}

};

Manage的定义,其代码如下:

ClassManage{

Carcar[500];//定义一个存放的数组

intcount;//下标

intcapacity;//最大存储容量

public:

Manage(intcapa=500,intct=0)

{

capacity=capa;

count=ct;

}

~Manage(){}

boolAdd()//添加函数

{

stringa;//定义存储需添加的车牌号的变量

cout<<"请输入你要添加车辆的信息"<

cout<<"输入你要添加的车牌号:

";

cin>>a;

if(count==capacity)//判断容量是否已满

{

cout<<"车库已满"<

returntrue;

}

for(inti=0;i

{

if(a==car[i].Getnumber())

{

cout<<"本车辆已经添加!

"<

returntrue;

}

}

car[count++].input();

cout<<"添加成功"<

returntrue;

}

voidSearch()//查找函数

{

cout<<"请输入你要查询车辆信息的方式:

1.按车牌号进行查询2.按车型进行查询"<

intA;

cin>>A;

stringB;

stringC;

if(count==0)

{cout<<"记录为空!

"<

switch(A)

{

case1:

{

cout<<"请输入你要查询的车牌号:

";

cin>>B;

for(inti=0;i

{

if(B==car[i].Getnumber())

{

car[i].output();

break;

}

cout<<"记录为空!

"<

}

};break;

case2:

{

cout<<"请输入你要查询的车的车型号:

";

cin>>C;

for(inti=0;i

{

if(C==car[i].Gettype())

{

car[i].output();

break;

}

cout<<"记录为空!

"<

}

};break;

}

}

voidDisplay()//显示全部车辆信息函数

{

if(count==0)

{cout<<"记录为空"<

for(inti=0;i

{

car[i].output();

}

}

boolEdit()//修改函数

{

stringa;//定义存储需添加的车牌号的变量

intc;//可以选择多方式修改

stringd;//要修改的对应的参数

intb;

cout<<"请输入你要修改车辆的车牌号:

";

cin>>a;

for(inti=0;i

{

if(a==car[i].Getnumber())

{

car[i].output();

b=i;

break;

}

cout<<"记录为空!

"<

}

cout<<"0.修改车牌号1.修改颜色2.修改车型3.修改入库时间4.修改出库时间5.退出修改界面"<

cout<<"请输入你的选择:

";

cin>>c;

switch(c)

{

case0:

cout<<"将车牌号修改为:

";

cin>>d;

car[b].setnumber(d);

cout<<"修改成功!

"<

break;

case1:

cout<<"将车的颜色改为:

";

cin>>d;

car[b].setcolor(d);

cout<<"修改成功!

"<

break;

case2:

cout<<"将车的车型改为:

";

cin>>d;

car[b].settype(d);

cout<<"修改成功!

"<

break;

case3:

cout<<"将车的入库时间改为:

";

cin>>d;

car[b].setintime(d);

cout<<"修改成功!

"<

break;

case4:

cout<<"将车出库时间改为:

";

cin>>d;

car[b].setouttime(d);

cout<<"修改成功!

"<

break;

case5:

cout<<"你已成功退出修改界面"<

break;

}

returntrue;

}

voidDelete()//删除函数

{

stringa;

cout<<"请输入你要删除车辆的信息:

"<

cout<<"请输入删除车辆的车牌号:

";

cin>>a;

if(count==0)

{cout<<"记录为空!

"<

}

for(inti=0;i

{

if(a==car[i].Getnumber())

{

for(intj=i;j

car[j]=car[j+1];

cout<<"删除成功"<

count--;

break;

}

}

}

2.4主要函数功能实现

另外一些需要一些函数来完成二级页面的界面显示,其代码如下:

voidAdd1()

{

intb;//编号

cout<<"****************************************************************"<

cout<<"************************************"<

cout<<"1.添加车辆具体信息"<

cout<<"0.退出添加功能界面"<

cout<<"请输入你选择的编号:

";

cin>>b;

switch(b)

{

case1:

a.Add();break;

case0:

cout<<"你已成功退出添加功能界面"<

}

}

voidSearch1()

{

intb;//编号

cout<<"****************************************************************"<

cout<<"************************************"<

cout<<"1.查找车辆具体信息"<

cout<<"0.退出查询功能界面"<

cout<<"请输入你选择的编号:

";

cin>>b;

switch(b)

{

case1:

a.Search();break;

case0:

cout<<"你已成功退出查询功能界面"<

}

}

voidDisplay1()

{

intb;//编号

cout<<"****************************************************************"<

cout<<"************************************"<

cout<<"1.显示车辆具体信息"<

cout<<"0.退出显示功能界面"<

cout<<"请输入你选择的编号:

";

cin>>b;

switch(b)

{

case0:

cout<<"你已成功退出显示功能界面"<

case1:

a.Display();break;

}

}

voidDelete1()

{

intb;//编号

cout<<"****************************************************************"<

cout<<"************************************"<

cout<<"1.删除车辆具体信息"<

cout<<"0.退出删除功能界面"<

cout<<"请输入你选择的编号:

";

cin>>b;

switch(b)

{

case0:

cout<<"你已成功退出删除功能界面"<

case1:

a.Delete();break;

}

}

voidEdit1()

{

intb;//编号

cout<<"****************************************************************"<

cout<<"************************************"<

cout<<"1.编辑车辆具体信息"<

cout<<"0.退出编辑功能界面"<

cout<<"请输入你选择的编号:

";

cin>>b;

switch(b)

{

case0:

cout<<"你已成功退出编辑功能界面"<

case1:

a.Edit();break;

}

}

voidTotle1()

{

intb;//编号

cout<<"****************************************************************"<

cout<<"************************************"<

cout<<"1.统计车辆具体总数"<

cout<<"0.退出统计功能界面"<

cout<<"请输入你选择的编号:

";

cin>>b;

switch(b)

{

case0:

cout<<"你已成功退出统计功能界面"<

case1:

a.Totle();break;

}

}

第三章软件的实现

主函数主要代码如下:

Managea;//定义一个Managede的全局对象

intmain()

{

cout<<"************************欢迎进入华瑞车库管理系统********************************"<

inta;//选择功能序号

do

{

cout<<"****************************请选择你需要的功能**********************************"<

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 初中教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2