C++课程设计之车辆管理系统

上传人:cn****1 文档编号:513339822 上传时间:2023-02-28 格式:DOC 页数:92 大小:850.50KB
返回 下载 相关 举报
C++课程设计之车辆管理系统_第1页
第1页 / 共92页
C++课程设计之车辆管理系统_第2页
第2页 / 共92页
C++课程设计之车辆管理系统_第3页
第3页 / 共92页
C++课程设计之车辆管理系统_第4页
第4页 / 共92页
C++课程设计之车辆管理系统_第5页
第5页 / 共92页
点击查看更多>>
资源描述

《C++课程设计之车辆管理系统》由会员分享,可在线阅读,更多相关《C++课程设计之车辆管理系统(92页珍藏版)》请在金锄头文库上搜索。

1、.C+面向对象程序设计课程设计报告课程名称 C+面向对象程序设计课题名称车辆管理系统专业班级学号姓名指导教师年月日一、课程设计题目:题目4 车辆管理系统二、目的与要求:1、目的:1要求学生达到熟练掌握C+语言的基本知识和技能;2基本掌握面向对象程序设计的基本思路和方法;3能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。2、基本要求:1要求利用面向对象的方法以及C+的编程思想来完成系统的设计;2要求在设计的过程中,建立清晰的类层次;3在系统中至少要定义四个类,每个类中要有各自的属性和方法;4在系统的设计中,至少要用到面向对象的一种机制。3、创新要求:在基本要求达到后,可进行创新设计

2、,如根据查找结果进行修改的功能。三、设计方法和基本原理:功能要求:1) 添加车辆程序主要完成车辆信息的添加,要求编号唯一。如果添加了重复编号的物品时,那么提示用户数据添加重复并取消添加;如果车辆信息库已满,那么提示不能再添加新的车辆信息。2) 查询车辆可按照三种方式进行物品的查询。按车辆制造公司查询:按编号查询:按类别查询:如果未找到,给出相应的提示信息,如果找到,那么显示相应的记录信息。3) 显示车辆信息库可显示当前车辆信息库中所有的车辆信息。4) 修改车辆可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。5删除车辆对已添加的车辆信息进行删除。如果当前车辆信息库为空,那么提示“车辆

3、信息库为空!并返回操作;否那么输入要删除的编号,根据编号删除该车辆信息,如果没有找到该车辆信息,那么提示“该编号不存在。6统计功能输出当前车辆信息库中总车辆数,以及按车辆类别,统计出当前车辆信息库中各类别的车辆数并显示。7) 保存车辆将当前系统中车辆信息存入文件中。8) 读取车辆将保存在文件中的车辆信息读入到当前系统中,以供用户使用。在完成以上基本功能的基础上,可自行进行扩展或完善。3、问题的解决方案:根据系统功能要求,可以将问题解决分为以下步骤:1应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;2分析系统中的各个实体以及它们之间的关系;3根据问题描述,设计系统的类层次;4完成类层

4、次中各个类的描述;5完成类中各个成员函数的定义;6完成系统的应用模块;7功能调试;8完成系统总结报告。目录1.系统需求分析22.总体设计23.详细设计及实现24.系统调试错误!未定义书签。5.结论错误!未定义书签。6.心得体会错误!未定义书签。7.参考书目错误!未定义书签。1. 系统需求分析 1.1系统设计的目的与意义:随着社会的进步和人们生活水平的提高,车辆作为交通工具,已经成为人们日常生活中不可缺少的一部分.大大增加了交通压力,同时,也对车辆里的管理有了一个更高的要求.因此,需要一个车辆管理系统来对各种车辆的各种信息进行统一管理. 1.2 系统功能需求:本系统有三个类:Car类、Truck

5、类、Bus类,存储小轿车信息、卡车信息、大客车信息。1添加车辆程序主要完成车辆信息的添加,要求编号唯一。如果添加了重复编号的物品时,那么提示用户数据添加重复并取消添加;如果车辆信息库已满,那么提示不能再添加新的车辆信息。2查询车辆可按照三种方式进行物品的查询。按车辆制造公司查询:按编号查询:按类别查询:如果未找到,给出相应的提示信息,如果找到,那么显示相应的记录信息。3显示车辆信息库可显示当前车辆信息库中所有的车辆信息。4修改车辆可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。5删除车辆对已添加的车辆信息进行删除。如果当前车辆信息库为空,那么提示“车辆信息库为空!并返回操作;否那么

6、输入要删除的编号,根据编号删除该车辆信息,如果没有找到该车辆信息,那么提示“该编号不存在。6统计功能输出当前车辆信息库中总车辆数,以及按车辆类别,统计出当前车辆信息库中各类别的车辆数并显示。7保存车辆将当前系统中车辆信息存入文件中。8读取车辆将保存在文件中的车辆信息读入到当前系统中,以供用户使用。2. 总体设计2.1 系统功能分析:系统通过调用函数来实现信息录入、信息修改、信息删除、信息查询以及数据保存文件等功能。add函数用于录入信息;modify函数用来修改信息;del函数用来修改信息;search函数用来查询车辆信息;read函数用于将文件中的数据读取到存中;save函数用于将存中的信息

7、存入文件;主函数main用于调用这些函数。2.2系统功能模块划分与设计:系统定义了Car类、Truck类、Bus类这三个类,定义了add、modify、del、read、save、search等函数来实现系统所需功能。2.3 系统功能模块图:车辆信息管理系统小轿车信息管理卡车信息管理大客车信息管理小轿车信息读取小轿车信息添加小轿车信息修改小轿车信息删除小轿车信息保存卡车信息读取卡车信息添加卡车信息修改卡车信息删除卡车信息保存大客车信息读取大客车信息添加大客车信息修改大轿车信息删除大客车信息保存大客车信息查询卡车信息查询小轿车信息查询2.4 类的设计1Base类抽象类的设计:Basevirtua

8、l void read()=0;virtual void add()=0;virtual void modify(int)=0;virtual void del(int)=0;virtual void save()=0;virtual void search()=0;图 3.1 Base类2小轿车类的设计:Cardouble carFee;char carID20;char carName20;void read();void add(); void modify(int);void del(int);void save();void search();图 3.2小轿车类3卡车类的设计:Tru

9、ckchar truckID20;char truckName20; int truckNum;void read();void add();void modify(int);void del(int);void save();void search();图 3.3卡车类4大客车类的设计:Buschar busName20;char busID20;int busNum;void read();void add(); void modify(int);void del(int);void save();void search();图 3.4 大卡车类3. 详细设计及实现3.1 Base类(抽象

10、类)的实现class Basepublic:virtual void read()=0;virtual void add()=0;virtual void modify(int)=0;virtual void del(int)=0;virtual void save()=0;virtual void search()=0;3.2 小轿车类的实现Car.hclass Car:public Basepublic:double carFee; char carID20; char carName20;void read();void add(); void modify(int);void del(

11、int);void save();void search();Car.cppvoid Car:read() ifstream carfile;carfile.open (轿车信息.txt); carfilecarcount_car.carIDcarcount_car.carNamecarcount_car.carFee; while(!carfile.eof() count_car+;carfilecarcount_car.carIDcarcount_car.carNamecarcount_car.carFee; carfile.close();void Car:add() /存入对象数组中s

12、trcpy(carcount_car.carID,carID);strcpy(carcount_car.carName,carName);carcount_car.carFee=carFee; count_car+; void Car:modify(int index) strcpy(carindex-1.carID,carID); strcpy(carindex-1.carName,carName);carindex-1.carFee=carFee;void Car:del(int index) /前移其后记录for(int i=index;i=count_car-1;i+)strcpy(c

13、ari-1.carID,cari.carID);strcpy(cari-1.carName,cari.carName);cari-1.carFee=cari.carFee;count_car-; void Car:search()for(int i=0;icount_car-1;i+)if(strcmp(cari.carID,carID)=0|strcmp(cari.carName,carName)=0)cout轿车车牌号 轿车品牌 轿车油耗费用endl;coutcari.carID cari.carName cari.carFeeendl;break;elsecout无此轿车数据!endl;break;void Car:save() ofstream carfile; carfile.open(轿车信息.txt);for(in

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号