c++程序设计车辆管理系统实验报告附源代码

上传人:ta****u 文档编号:209797955 上传时间:2023-05-15 格式:DOCX 页数:18 大小:196.38KB
返回 下载 相关 举报
c++程序设计车辆管理系统实验报告附源代码_第1页
第1页 / 共18页
c++程序设计车辆管理系统实验报告附源代码_第2页
第2页 / 共18页
c++程序设计车辆管理系统实验报告附源代码_第3页
第3页 / 共18页
点击查看更多>>
资源描述
C+程序设计车辆管理系统实验报告附源代码1. 实习题目车辆管理系统2. 原理概述*运输公司,需要对其下所有的各种车辆进展管理,拟建立一个车辆管理 系统进展管理,该系统能够实现以下功能: 1利用类、继承的相关理论知识,建立合理的类,能够管理至少 5 种车型, 各种车型的相关数据,根据需要自行设定 1能够统计出该公司,所有车辆的累积行驶里程 2能够分类统计出每一类车辆的累积行驶里程、资产总额、驾驶员数量等 相关信息3能够根据驾驶员信息查找该驾驶员驾驶的车辆的详细信息 4能够统计出该公司车辆的总数额以及每类车辆的数量 5能够实现*个类型车辆的添加和删除6其他功能可根据需要自行扩大,并请在课程设计报告中详细说明!3设计方案3.1 编程语言C+语言Car3.2 数据构造Man age r 先定义构造体类,再将其继承,分别记录车辆信息和车辆编号函数;类的定义和使用 While 函数 for 循环 if 判断语句 switch 循环;文件的翻开与关闭,输入和输出。 3.4 流程图num;/车辆编号 pn um;车牌号 made;/生产厂家 n ame;/ 名字 tiB.3/系统构造图 dista nce;里程Man age r car N; top;/当前车的数量 add(); 增加 sea rch(); 查询 show();显示 delet():删Q除车辆管理系统车 辆 信 息 删 除j+!miap();/ ore辆保 ado信/读I ite息打 /息统计stre:面车车辆辆信 信信自息界保面存车 辆 信 息 读 取车 辆 信 息 打 印车辆信息添加完毕车辆信息读取车辆信息打印车辆信息保存4. 程序编写#include #include #include using namespace std;#define N 25/车辆极限存储量 struct Manager int num;/车辆编号 int pnum;/车牌号 st ring made;/生产厂家 st ring name;/名字 int time;/日期 double dis tance;/里程 double price;/价格 st ring driver;/驾驶员 long long cellphone;/手机号 int ty pe;/车型 ;class Car private:Manager carN; int top;/当前车的数量。public:Car() top = 0; void add();/增加void search。;/查询void show();/显示 void dele t();/删除 void sum();/统计void jiemian();/界面void sto re();/保存void read();/读取 void writ e();/打印 ;void Car:add()void Car:search()void Car:show()void Car:delet() void Car:sum () void Car:jiemian() void Car:store () void Car:read() void Car:write()5. 执行界面、运行结果分析 车辆信息添加 输入编号添加车辆依次输入车辆信息 车辆信息查询输入车辆编号查询车辆信息。车辆信息显示显示车库内所有车辆。 车辆信息删除 选择编号显示车辆信息,完成删除。 车辆信息统计 选择要统计的内容,显示统计的内容 车辆信息保存将车辆信息保存在文件中。车辆信息读取将保存的车辆信息读取出来车辆信息打印将车辆信息打印下来。6. 总结与体会经过了几个星期的学习与实践,汽车管理系统已根本完成,根本功能已全部实现,顽强 可以在汽车公司投入使用。系统功能有:添加车辆信息,删除车辆信息,查询车辆信息,显 示车辆信息,统计车辆信息,保存车辆信息,读取车辆信息,打印车辆信息等。通过这次实践学习,我不仅加深了课堂知识还学到了许多课上学不到的技能。既提高了 我的根底知识,又增强了我的动手操作能力。比方在做一个大工程时,一开场不急于动手写 代码,应该先对这个工程做整体的分析,明确此工程的数据构造和根本实现功能,然后收集 资料,设计算法,在这些工作完成后再开场编写代码。在本次实践过程中我也发现了许多的缺乏。比方,在这次系统设计中,只考虑到问题的 一般情况,而忽略特殊情况;考虑问题不全面,只会单一的在*一方面或*一类方面考虑问题, 视野没有得以开阔等。我相信经过本次实践,我会在以后的学习工作中变得更加小心和自信,系统也会学做越熟练。在不断的错误和失败中逐渐弥补和提高,是自己变得更加完美,设计以更加#include#include#include using namespace std; #define N 25/车辆极限存储量 struct Manager int num;/车辆编号 int pnum;/车牌号 string made;/生产厂家 string name;/名字 int t ime;/ 日期 double dis tance;/里程 double price;/价格 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 dele t();/删除void sum();/统计void jiemian();/界面void sto re();/保存void read();/读取void writ e();/打印;void Car:add() int 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.driver;cout cartop.cellphone;cout 摩托车,2-汽车,3-客车,4-面包车,5-货车);cin cartop.type; top+;cout 添加成功!是否继续添加车辆(l-yes or 2-no)endl;cin b;if (b = 2) cout 系统返回中,请稍后! endl; break;else/编号重复break;else cout 车库已满无法添加 endl;cout 系统返回 endl; break;jiemian();void Car:search() inti, j, k,a = 0, b=0,c;cout 1-根据编号查询!endl;cout 2-根据驾驶员信息查询! endl;cout 请输入你的查询方式!1 or 2endl; cin i;switch (i) case 1: int n;cout 输入要查询的车辆编号: endl;cin 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 驾驶员的名字: 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.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 信息错误或不存在! 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;cout 行驶里程: 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;elsecout 车辆库为空! endl;cout 按1返回主界面: j;if (j = 1) jiemian();else jiemian();void Car:delet() int i,a=0;while(1) if(top=0)cout车辆库为空将退回功能界面! endl;break;elsecout请输入要删除的车辆编号! endl;cini;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; cout 驾驶员的手机号: carj.cellphone 摩托车,2-汽车,3-客车,4-面包车,5-货车) endl;cout是否确定信息并删除!1-是,2-否endl; int n;cinn;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.driver; carj.cellphone=cartop-1.cellphone; carj.type=cartop-1.type;top-;a+;elseif(n=2)cout系统返回中!endl;elsecout输入错误系统返回中。endl;if(a=0)cout此编号不存在,不能进展删除,请重新输入! endl;elsecou t删除成功!系统将返回功能界面.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; cout 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; m+) if (carm.type = 1) a=a+carm.distance; elseif (carm.type = 2) b=b + carm.distance; elseif (carm.type = 3) c=c + carm.distance; elseif (carm.type = 4) d=d+carm.distance; elsef=f + carm.distance;cout 摩托车的总里程: a endl;cout 汽车的总里程: b endl;cout 客车的总里程: c endl;cout 面包车的总里程: d endl;cout 货车的总里程: 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; elseif (carm.type = 2) b = b + carm.price; elseif (carm.type = 3) c = c + carm.price; elseif (carm.type = 4) d = d +carm.price; elsef = f + carm.price;cout 摩托车的总资产: a endl; cout 汽车的总资产: b endl; cout 客车的总资产: c endl;cout 面包车的总资产: d endl; cout 货车的总资产: f endl;cout 查询成功,系统将返回主页面。 摩托车,2-汽车,3-客车,4-面包车,5-货车) break;default:cout 输入有误!系统将返回. endl; break;else cout 输入错误,系统返回。 endl; break;break;case 3:cout 1-总驾驶员数 endl;cout 2-各类车的总驾驶员数 endl;cout 输入选项: j;if (j = 1 | j = 2) switch (j) case 1:a = top;cout 总驾驶员数: a endl;cout 查询成功,系统将返回主页面。 endl; break;case 2:for (m = 0; m top; m+) if (carm.type = 1) a+; elseif (carm.type = 2) b+; elseif (carm.type = 3) c+; elseif (carm.type = 4) d+; elsef+;cout 摩托车的驾驶员数: a endl; cout 汽车的总驾驶员数: b endl;cout 客车的总驾驶员数: c endl; cout 面包车的总驾驶员数: d endl; cout 货车的总驾驶员数: f endl;cout 查询成功,系统将返回主页面。 摩托车,2-汽车,3-客车,4-面包车,5-货车) break;default:cout 输入有误!系统将返回. endl; break;else cout 输入错误,系统返回。 endl; break;break;case 4:cout 1-总车数 endl;cout 2-各类车的车数 endl;cout 输入选项: j;if (j = 1 | j = 2) switch (j) case 1:a = top;cout 总车辆数: a endl;cout 查询成功,系统将返回主页面。 endl; break;case 2:for (m = 0; m top; m+) if (carm.type = 1) a+; elseif (carm.type = 2) b+; elseif (carm.type = 3) c+; elseif (carm.type = 4) d+; elsef+;cout 摩托车的车辆数: a endl;cout 汽车的总车辆数: b endl;cout 客车的总车辆数: c endl;cout 面包车的总车辆数: d endl; cout 货车的总车辆数: f endl;cout 查询成功,系统将返回主页面。 摩托车,2-汽车,3-客车,4-面包车,5-货车) break;default:cout 输入有误!系统将返回. endl; break;else cout 输入错误,系统返回。 endl; break; break;default:cout 输入有误!系统将返回. endl; break;else cout 输入错误,系统返回主页面。 endl; jiemian();void Car:write() ofstream fileout(a.t*t,ios:trunc);fileout.close(); ofstream write(a.t*t);for(int i = 0; i top; i+)write 车辆编号: cari.num ;wri te 车牌号cari.pnum;write 车名: cari.name ; write 购置日期: cari.time ; write 生产厂家: cari.made ; write 行驶里程: cari.distance ; write 车辆价格: cari.price ;write 驾驶员的名字: cari.driver ; write 驾驶员的手机号: cari.cellphone ;write 车型: cari.type endl;write.close();cout车辆信息已成功打印到同目录下a.t*t文件中,系统间返回主界面!cartop.numcartop.pnumcartop.namecartop.timecarto p.madecartop.distancecartop.pricecartop.drivercartop.cellp honecartop.cellphonecartop.type;top+;cout读取同目录下的b.t*t文件成功!系统将返回主界面.endl;read.close();jiemian();void Car:jiemian() int n;coutendl;cout*欢送进入车辆管理系统!*endl;cout*X* *X* *X* *X* *X* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* endl;cout*1-添加车辆。*endl;cout*2-删除车辆。*endl;cout *3-查询车辆。* endl;cout *4-显示车辆。* endl;cout *5-统计车辆。* endl;cout *6-打印车辆。* endl;cout *7-读取车辆。* endl;cout *8-保存车辆。* endl;cout *0-退出系统。* endl;cout * endl;cout 请输入您的操作选项: n;switch (n) case 1:add();case 2:delet();case 3:search();case 4:show();case 5: sum();case 6:write();case 7: read();case 8:store();case 0:e*it(0);default:cout 输入错误!系统将退出! endl; return;void main() Car a;a.jiemian();
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸设计 > 毕设全套


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!