1、C+程序设计车辆管理系统实验报告 附源代码C+程序设计车辆管理系统实验报告 附源代码1. 实习题目车辆管理系统2、原理概述某运输公司,需要对其下所有的各种车辆进行管理,拟建立一个车辆管理系统进行管理,该系统能够实现以下功能:(1)利用类、继承的相关理论知识,建立合理的类,能够管理至少5种车型,各种车型的相关数据,根据需要自行设定(1)能够统计出该公司,所有车辆的累积行驶里程(2)能够分类统计出每一类车辆的累积行驶里程、资产总额、驾驶员数量等相关信息(3)能够根据驾驶员信息查找该驾驶员驾驶的车辆的详细信息(4)能够统计出该公司车辆的总数额以及每类车辆的数量(5)能够实现某个类型车辆的添加与删除(
2、6)其她功能可根据需要自行扩充,并请在课程设计报告中详细说明!3.设计方案3、1 编程语言C+语言3、2数据结构add();/增加search();/查询show();/显示delet();/删除sum();/统计jiemian();/界面store();/保存read();/读取write();/打印3、3、系统结构图车辆管理系统车辆信息添加车辆信息查询车辆信息显示车辆信息删除车辆信息统计车辆信息打印车辆信息界面车辆信息保存车辆信息读取3、4技术方案先定义结构体类,再将其继承,分别记录车辆信息与车辆编号函数;类的定义与使用;While函数for循环if判断语句switch循环;文件的打开与关
3、闭,输入与输出。3、4流程图车辆信息添加车辆信息查询车辆信息显示开始判断车库就是否有车就是显示车库内所有车辆返回主界面结束否车辆信息删除结束车辆信息统计车辆信息保存车辆信息读取车辆信息打印4、程序编写#include#include#includeusing namespace std;#define N 25/车辆极限存储量struct Manager int num;/车辆编号 int pnum;/车牌号 string made;/生产厂家 string name;/名字 int time;/日期 double distance;/里程 double price;/价格 string dr
4、iver;/驾驶员 long long cellphone;/手机号 int type;/车型;class Car private: Manager carN; int top;/当前车的数量。public: Car() top = 0; void add();/增加 void search();/查询 void show();/显示 void delet();/删除 void sum();/统计 void jiemian();/界面 void store();/保存 void read();/读取 void write();/打印;void Car:add()void Car:search(
5、)void Car:show()void Car:delet()void Car:sum ()void Car:jiemian()void Car:store ()void Car:read()void Car:write()5、 执行界面、运行结果分析车辆信息添加输入编号添加车辆依次输入车辆信息。车辆信息查询输入车辆编号查询车辆信息。车辆信息显示显示车库内所有车辆。车辆信息删除选择编号显示车辆信息,完成删除。车辆信息统计选择要统计的内容,显示统计的内容。车辆信息保存将车辆信息保存在文件中。车辆信息读取将保存的车辆信息读取出来。车辆信息打印将车辆信息打印下来。6、总结与体会经过了几个星期的学习
6、与实践,汽车管理系统已基本完成,基本功能已全部实现,顽强可以在汽车公司投入使用。系统功能有:添加车辆信息,删除车辆信息,查询车辆信息,显示车辆信息,统计车辆信息,保存车辆信息,读取车辆信息,打印车辆信息等。通过这次实践学习,我不仅加深了课堂知识还学到了许多课上学不到的技能。既提高了我的基础知识,又增强了我的动手操作能力。比如在做一个大项目时,一开始不急于动手写代码,应该先对这个项目做整体的分析,明确此项目的数据结构与基本实现功能,然后收集资料,设计算法,在这些工作完成后再开始编写代码。在本次实践过程中我也发现了许多的不足。比如,在这次系统设计中,只考虑到问题的一般情况,而忽略特殊情况;考虑问题
7、不全面,只会单一的在某一方面或某一类方面考虑问题,视野没有得以开阔等。我相信经过本次实践,我会在以后的学习工作中变得更加小心与自信,系统也会学做越熟练。在不断的错误与失败中逐渐弥补与提高,就是自己变得更加完美,设计以更加完美。#include#include#includeusing namespace std;#define N 25/车辆极限存储量struct Manager int num;/车辆编号 int pnum;/车牌号 string made;/生产厂家 string name;/名字 int time;/日期 double distance;/里程 double price;
8、/价格 string driver;/驾驶员 long long cellphone;/手机号 int type;/车型;class Car private: Manager carN; int top;/当前车的数量。public: Car() top = 0; void add();/增加 void search();/查询 void show();/显示 void delet();/删除 void sum();/统计 void jiemian();/界面 void store();/保存 void read();/读取 void write();/打印;void Car:add() in
9、t a = 1, b; while (1) if (topN) int i; cout 请输入添加的车辆信息: endl; cout i; for (int j = 0; jtop; j+) if (carj、num = i) cout 车辆编号重复,系统返回、 endl; a+; break; if (a = 1) cartop、num = i; cout cartop、pnum; cout cartop、name; cout cartop、time; cout cartop、made; cout cartop、distance; cout cartop、price; cout cartop
10、、driver; cout cartop、cellphone; cout 摩托车,2-汽车,3-客车,4-面包车,5-货车); cin cartop、type; top+; cout yes or 2-no) b; if (b = 2) cout 系统返回中,请稍后! endl; break; else/编号重复 break; else cout 车库已满无法添加 endl; cout 系统返回 endl; break; jiemian();void Car:search() int i, j, k,a = 0, b=0,c; cout 1-根据编号查询!endl; cout 2-根据驾驶员信
11、息查询!endl; cout 请输入您的查询方式!(1 or 2) i; switch (i) case 1: int n; cout 输入要查询的车辆编号: n; for (j = 0; j top; j+) if (carj、num = n) cout 车辆编号: carj、num endl; cout 车名: carj、name endl; cout 购买日期: carj、time endl; cout 生产厂家: carj、made endl; cout 行驶里程: carj、distance endl; cout 车辆价格: carj、price endl; cout 驾驶员的名字:
12、 carj、driver endl; cout 驾驶员的手机号: carj、cellphone endl; cout 车型: carj、type endl; cout 摩托车,2-汽车,3-客车,4-面包车,5-货车) endl; a+; if (a = 0) cout 编号不存在! endl; break; case 2: int m; string l; cout 输入驾驶员的名字 l; cout 输入驾驶员的手机号 m; for (k = 0; k top; k+) if (cark、driver = l) if (cark、cellphone = m) cout 车辆编号: cark、
13、num endl; cout 车名: cark、name endl; cout 购买日期: cark、time endl; cout 生产厂家: cark、made endl; cout 行驶里程: cark、distance endl; cout 车辆价格: cark、price endl; cout 驾驶员的名字: cark、driver endl; cout 驾驶员的手机号: cark、cellphone endl; cout 车型: cark、type endl; cout 摩托车,2-汽车,3-客车,4-面包车,5-货车) endl; b+; if (b = 0) cout 信息错误
14、或不存在! endl; break; default: cout 输入有误! endl; break; cout 按1返回主界面: c; if (c = 1) jiemian(); else jiemian(); void Car:show() int i, j; if (top != 0) cout 车库中所有车的基本信息: endl; for (i = 0; i top; i+) cout 车辆编号: cari、num endl; cout 车名: cari、name endl; cout 购买日期: cari、time endl; cout 生产厂家: cari、made endl; c
15、out 行驶里程: cari、distance endl; cout 车辆价格: cari、price endl; cout 驾驶员的名字: cari、driver endl; cout 驾驶员的手机号: cari、cellphone endl; cout 车型: cari、type endl; cout 摩托车,2-汽车,3-客车,4-面包车,5-货车) endl; else cout 车辆库为空! endl; cout 按1返回主界面: j; if (j = 1) jiemian(); else jiemian(); void Car:delet() int i,a=0; while(1)
16、 if(top=0) cout车辆库为空将退回功能界面!endl; break; else cout请输入要删除的车辆编号!i; for(int j=0;jtop;j+) if(carj、num =i) cout 车辆编号: carj、num endl; cout 车名: carj、name endl; cout 购买日期: carj、time endl; cout 生产厂家: carj、made endl; cout 行驶里程: carj、distance endl; cout 车辆价格: carj、price endl; cout 驾驶员的名字: carj、driver endl; cou
17、t 驾驶员的手机号: carj、cellphone endl; cout 车型: carj、type endl; cout 摩托车,2-汽车,3-客车,4-面包车,5-货车) endl; cout就是,2-否)n; if(n=1) carj、num=cartop-1、num; carj、name=cartop-1、name; carj、time=cartop-1、time; carj、made=cartop-1、made; carj、distance=cartop-1、distance; carj、price=cartop-1、price; carj、driver=cartop-1、drive
18、r; carj、cellphone=cartop-1、cellphone; carj、type=cartop-1、type; top-; a+; else if(n=2) cout系统返回中!endl; else cout输入错误系统返回中。endl; if(a=0) cout此编号不存在,不能进行删除,请重新输入!endl; else cout删除成功!系统将返回功能界面、endl; break; jiemian();void Car:sum() int i, j,l,m,a=0, b=0, c=0,d=0,f=0; cout 1-统计里程 endl; cout 2-统计资产 endl; c
19、out 3-统计驾驶员 endl; cout 4-统计车辆数 endl; cout 输入统计的选项: i; if (i 0 & i 5) switch (i) case 1: cout 1-总里程 endl; cout 2-各类车的总里程 endl; cout 输入选项: j; if (j = 1 | j = 2) switch (j) case 1: for (l = 0; l top; l+) a = a + carl、distance; cout 总里程: a endl; cout 查询成功,系统将返回主页面。 endl; break; case 2: for (m = 0; m top
20、; m+) if (carm、type = 1) a=a+carm、distance; else if (carm、type = 2) b=b + carm、distance; else if (carm、type = 3) c=c + carm、distance; else if (carm、type = 4) d=d+carm、distance; else f=f + carm、distance; cout 摩托车的总里程: a endl; cout 汽车的总里程: b endl; cout 客车的总里程: c endl; cout 面包车的总里程: d endl; cout 货车的总里程
21、: f endl; cout 查询成功,系统将返回主页面。 摩托车,2-汽车,3-客车,4-面包车,5-货车) break; default: cout 输入有误!系统将返回、 endl; break; else cout 输入错误,系统返回。 endl; break; break; case 2: cout 1-总资产 endl; cout 2-各类车的总资产 endl; cout 输入选项: j; if (j = 1 | j = 2) switch (j) case 1: for (l = 0; l top; l+) a = a + carl、price; cout 总资产: a endl; cout 查询成功,系统将返回主页面。 endl; break; case 2: for (m = 0; m top; m+) if (carm、type = 1) a = a + carm、price; else if (carm、type = 2) b = b + carm、price; else i
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1