车辆管理系统附源代码C++课程设计报告Word文档下载推荐.docx

上传人:b****3 文档编号:15831867 上传时间:2022-11-16 格式:DOCX 页数:23 大小:546.20KB
下载 相关 举报
车辆管理系统附源代码C++课程设计报告Word文档下载推荐.docx_第1页
第1页 / 共23页
车辆管理系统附源代码C++课程设计报告Word文档下载推荐.docx_第2页
第2页 / 共23页
车辆管理系统附源代码C++课程设计报告Word文档下载推荐.docx_第3页
第3页 / 共23页
车辆管理系统附源代码C++课程设计报告Word文档下载推荐.docx_第4页
第4页 / 共23页
车辆管理系统附源代码C++课程设计报告Word文档下载推荐.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

车辆管理系统附源代码C++课程设计报告Word文档下载推荐.docx

《车辆管理系统附源代码C++课程设计报告Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《车辆管理系统附源代码C++课程设计报告Word文档下载推荐.docx(23页珍藏版)》请在冰豆网上搜索。

车辆管理系统附源代码C++课程设计报告Word文档下载推荐.docx

目录

摘要Ⅰ

第1章绪论1

1.1课程设计的目的1

1.2课程设计的背景及意义1

1.2.1课程设计的背景1

1.2.2课程设计的意义1

1.3课程设计环境1

第2章系统需求分析2

2.1问题描述2

2.2功能分析2

2.3问题的解决方案3

第3章系统设计4

3.1数据设计4

3.1.1类设计4

3.1.2类之间的关系4

3.1.3函数设计4

3.2结构设计5

3.2.1系统流程图5

3.2.2界面设计6

第4章系统实现8

4.1类实现8

4.2函数实现10

4.3主函数实现14

第5章系统测试16

5.1模块测试16

5.2课程设计过程中遇到的问题18

总结19

致谢20

参考文献21

第一章绪论

1.1课程设计的目的

(1)要求学生能够熟练掌握C++语言的基本知识和技能。

(2)加班掌握面向对象程序设计的基本思路和方法。

(3)能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。

1.2课程设计的背景和意义

1.2.1课程设计的背景

1.理论研究基础

(1)C++在C的基础上增加了面向对象的机制。

(2)充分运用面向对象机制中的继承性与多态性实现函数的设计。

2.技术层面的支持

运用系统为C++面向对象程序设计提供的各种设计方法和VC++系统提供的库函数实现项目的开发。

1.2.2课程设计的意义

通过设计此系统,熟练掌握C++语言的基本知识和技能,基本掌握面向对象程序开发的基本思路和方法,培养学生的动手操作能力,提高自主学习能力,能够利用所学的基本知识和技能,进行简单应用程序设计。

1.3课程设计环境

VisualC++6.0

第二章需求分析

2.1问题描述

车辆管理系统主要负责各种车辆的常规信息管理工作。

系统中的车辆主要有大客车、小轿车和卡车。

每种车辆有车辆编号、车牌号、车辆制造公司、车辆购买时间、车辆型号(大客车、小轿车和卡车)、总公里数、耗油量/公里、基本维护费用、养路费、累计总费用等信息。

大客车还有载客量(最大载客数)信息,小轿车还有箱数(两厢或三厢)信息,卡车还有载重量等信息。

每台车辆当月总费用=油价*耗油量/公里+基本维护费用。

基本维护费用:

客车:

2000元/月,小轿车:

1000元/月,卡车:

1500元/月

2.2功能要求

(1)添加车辆:

主要完成车辆信息的添加,要求编号唯一。

当添加了重复的编号时,

则提示数据添加重复并取消添加;

当车辆信息库已满,则提示不能再添加新的数据。

(2)查询车辆:

可按照三种方式来查询物品,分别为:

按车辆制造公司查询:

输入车辆制造公司,输出所查询的信息,若不存在该记录,则提示“该车辆制造公司不存在!

”;

按编号查询:

输入编号,输出所查询的信息,若不存在该记录,则提示“该编号不存在!

按类别查询:

输入类别,输出所查询的信息,若不存在记录,则提示“该类别没有车辆!

”。

(3)显示车辆信息库:

输出当前车辆信息库中所有车辆信息,每条记录占据一行。

(4)编辑功能:

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

(5)删除车辆:

主要完成车辆信息的删除。

如果当前车辆信息库为空,则提示“车辆

信息库为空!

”,并返回操作;

否则,输入要删除的编号,根据编号删除该车辆的记录,

如果该编号不在车辆信息库库中,则提示“该编号不存在”。

(6)统计信息:

输出当前车辆信息库中总物品数,以及按车辆类别,统计出当前车辆

信息库中各类别的物品数并显示。

(7)车辆信息存盘:

将当前程序中的车辆信息存入文件中。

(8)读出车辆信息:

从文件中将车辆信息读入程序。

2.3问题的解决方案

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

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

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

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

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

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

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

(7)功能调试;

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

第三章系统设计

3.1数据设计

3.1.1类设计

(1)日期类Date

(2)车辆类Vehicle

(3)车辆管理类ManyVehicle

3.1.2类之间的关系

(1)Date日期类:

基类

(2)Vehicle车辆类:

公有继承Date类

(3)ManyVehicle车辆数组类:

公有继承Vehicle类

3.1.3函数设计

(1)添加函数:

添加一个新数据。

如信息库已满,显示“信息库已满!

不能添加新的

数据!

”并退出添加;

如编号重复则显示“数据添加重复!

取消添加!

如可以添加,提示用户“当前信息库未满!

可以添加……”,在输入车辆信息后显示“数据添加成功!

”并保存当前添加数据,信息库车辆总数加一。

(2)查询函数:

查询车辆信息并显示。

系统提示按车辆制造公司查询、按编号查询、按类别查询三种查询方式,通过输入序号选择查询方式。

如果所查询的制造公司,编号,或类别下没有车辆信息,则提示用户索要查询的信息不存在,并退出查询;

如信息存在则显示出所要查询的车辆信息,显示完成后提示用户“查询完毕!

”,并退出查询。

(3)显示函数:

将所有车辆信息显示出来。

(4)编辑函数:

修改已有的车辆信息。

用户输入编号,若没有该编号,提示用户“该编号不存在!

”并退出编辑;

否则提示用户“请重新输入车辆信息……”,用户输入新的信息后,系统进行保存并退出编辑。

编辑时不能对编号进行修改。

(5)删除函数:

将已有车辆信息删除。

用户输入车辆编号,若没有该编号,提示用户“操作失败!

该编号不存在!

”并退出删除;

否则删除该编号下的车辆信息,提示用户“操作成功!

车辆已从数据库中删除!

”并保存,信息库车辆总数减一。

(6)统计函数:

将信息库内的车辆信息分类。

分别统计出大客车,小轿车,卡车的数量以及车辆总数,并进行输出。

(7)保存函数:

将信息保存为txt文件,保存成功后提示用户“信息保存成功!

否则显示“信息文件保存失败!

(8)读出函数:

从txt文件中将车辆信息读入程序。

(9)退出函数:

提示用户退出系统,显示结束界面。

3.2结构设计

3.2.1系统流程图

3.2.2界面设计

(1)欢迎界面:

按Enter键清屏并显示主菜单。

(2)主菜单:

通过输入序号进行相应的操作。

输入0退出系统。

(3)查询菜单:

主菜单下的子菜单。

在主菜单下输入“2”,则进入本子菜单。

通过输入序号进行相应的查询方式。

第四章系统实现

4.1类实现

●类名

日期类Date

●数据成员

intyear;

intmonth;

intday;

//年,月,日

●成员函数

intGetYear();

intGetMonth();

intGetDay();

//返回year,month,day

voidInput_Date();

//输入日期

voidShow_Date();

//输出日期

车辆类Vehicle

stringnum;

stringplate;

stringmake;

//车辆编号,车牌号,制造公司

Datetime;

//车辆购买时间

stringtype;

//车辆型号

doublekilometres;

//总公里数

Doubleoil,maintenance;

//耗油量/公里,基本维护费用

doubleroad;

doublemoney;

//养路费,累计总费用

intpeople;

intbox;

intheavy;

//载客量,箱数,载重量

stringGetNum();

stringGetMake();

stringGetType();

//传递

voidNum();

//车辆编号输入

doubleMaintenance();

doubleMoney();

//基本维护费用,累计总费用

voidInput();

//输入车辆信息

voidShow();

//输出车辆信息

voidShow_txt();

//输出文件信息

friendostream&

operator<

<

(ostream&

Vehicle&

);

//输出

表4-2.Vehicle类

voidSet(string,string,string,int,int,int,string,double,double,double,double,double,int,int,int);

表4-1.Date类

车辆数组类ManyVehicle

Vehiclev[N];

//定义车辆数组

inttop;

//数组内信息数量

ManyVehicle(){top=0;

}//构造

voidAdd();

//添加车辆

voidFind();

//查询车辆

voidFind1();

//按制造公司查询

voidFind2();

//按编号查询

voidFind3();

//按类别查询

voidTop();

//首行格式

voidShow();

//显示车辆信息库

voidEdit();

//编辑车辆

voidDelete();

//删除车辆

voidStatistics();

//统计信息

voidSave();

//车辆信息存盘

voidRead();

//读出车辆信息

voidQuit();

//退出

表4-3.ManyVehicle类

4.2函数实现

voidManyVehicle:

:

Add()

{

Vehiclev1;

if(top>

=N)

{

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

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1