c++程序设计车辆管理系统实验报告附源代码doc.docx
- 文档编号:7606135
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:44
- 大小:20.50KB
c++程序设计车辆管理系统实验报告附源代码doc.docx
《c++程序设计车辆管理系统实验报告附源代码doc.docx》由会员分享,可在线阅读,更多相关《c++程序设计车辆管理系统实验报告附源代码doc.docx(44页珍藏版)》请在冰豆网上搜索。
c++程序设计车辆管理系统实验报告附源代码doc
C++程序设计车辆管理系统实验报告附源代码
1.实习题目
车辆管理系统
2.原理概述
某运输公司,需要对其下所有的各种车辆进行管理,拟建立一个车辆管理系统进行管理,该系统能够实现以下功能:
(1)利用类、继承的相关理论知识,建立合理的类,能够管理至少5种车型,各种车型的相关数据,根据需要自行设定
(1)能够统计出该公司,所有车辆的累积行驶里程
(2)能够分类统计出每一类车辆的累积行驶里程、资产总额、驾驶员数量等相关信息
(3)能够根据驾驶员信息查找该驾驶员驾驶的车辆的详细信息
(4)能够统计出该公司车辆的总数额以及每类车辆的数量
(5)能够实现某个类型车辆的添加和删除
(6)其他功能可根据需要自行扩充,并请在课程设计报告中详细说明!
3.设计方案
编程语言
C++语言
数据结构
ManagerCar
num;//车辆编号
Managercar[N];
pnum;//车牌号
made;//生产厂家
name;//名字
add();//增加
search();//查询
show();//显示
delet();//删除
sum();//统计
jiemian();//界面
.系统结构图
车辆管理系统
车
车
车
车
车
车
车
车
车
辆
辆
辆
辆
辆
辆
辆
辆
辆
信
信
信
信
信
信
信
信
信
息
息
息
息
息
息
息
息
息
添
查
显
删
统
界
保
读
打
技术方案
先定义结构体类,再将其继承,分别记录车辆信息和车辆编号函数;类的定义和使用;
While函数for循环if判断语句switch循环;文件的打开与关闭,输入和输出。
流程图
车辆信息添加
开始
判断数据库是否满是返回主界面
输入车
是
判断编号是否重复
是返回主界面
输入车辆信息
车辆总数+1
继续添加否返回主界面
结束
车辆信息查询
开始
根据编号根据驾驶员
信息
否返回主界面
是
显示车辆
信息
结束
车辆信息显示
开始
判断车库是否
否
有车
是
显示车库内所有车辆
返回主界面
结束
车辆信息删除
开始
判断车库是否为空
是
否
输入车辆编号
判断删除信息是否
否
正确
删除成功
返回主界面
结束
车辆信息统计
开始
统
统
统
统
计
计
计
计
里
资
驾
车
辆
输出统计结果
返回主界面
结束
车辆信息保存
开始
保存成功
返回主界面结束
车辆信息读取
开始
读取成功
返回主界
结束
车辆信息打印
开始
打印成功
返回主界
结束
4.程序编写
#include
#include
#include
usingnamespacestd;
#defineN25执行界面、运行结果分析
车辆信息添加
输入编号添加车辆依次输入车辆信息。
车辆信息查询
输入车辆编号查询车辆信息。
车辆信息显示
显示车库内所有车辆。
车辆信息删除
选择编号显示车辆信息,完成删除。
车辆信息统计
选择要统计的内容,显示统计的内容。
车辆信息保存
将车辆信息保存在文件中。
车辆信息读取
将保存的车辆信息读取出来。
车辆信息打印
将车辆信息打印下来。
6.总结与体会
经过了几个星期的学习与实践,汽车管理系统已基本完成,基本功能已全部实现,顽强
可以在汽车公司投入使用。
系统功能有:
添加车辆信息,删除车辆信息,查询车辆信息,显
示车辆信息,统计车辆信息,保存车辆信息,读取车辆信息,打印车辆信息等。
通过这次实践学习,我不仅加深了课堂知识还学到了许多课上学不到的技能。
既提高了
我的基础知识,又增强了我的动手操作能力。
比如在做一个大项目时,一开始不急于动手写
代码,应该先对这个项目做整体的分析,明确此项目的数据结构和基本实现功能,然后收集
资料,设计算法,在这些工作完成后再开始编写代码。
在本次实践过程中我也发现了许多的不足。
比如,在这次系统设计中,只考虑到问题的
一般情况,而忽略特殊情况;考虑问题不全面,只会单一的在某一方面或某一类方面考虑问
题,视野没有得以开阔等。
我相信经过本次实践,我会在以后的学习工作中变得更加小心和自信,系统也会学
做越熟练。
在不断的错误和失败中逐渐弥补和提高,是自己变得更加完美,设计以更加
完美。
#include
#include
#include
usingnamespacestd;
#defineN25um==i){
cout<<"车辆编号重复,系统返回."< a++; break; } } if(a==1){ car[top].num=i; cout<<"输入车牌号: "; cin>>car[top].pnum; cout<<"输入车名: "; cin>>car[top].name; cout<<"输入购买日期: "; cin>>car[top].time; cout<<"输入生产厂家: "; cin>>car[top].made; cout<<"输入行驶里程: "; cin>>car[top].distance; cout<<"输入价格: "; cin>>car[top].price; cout<<"输入驾驶员的名字: cin>>car[top].driver; "; cout<<"输入驾驶员的手机号: cin>>car[top].cellphone; "; cout<<"输入车型: (1->摩托车,2->汽车,3->客车,4->面包 车,5->货车)"; cin>>car[top].type; top++; cout<<"添加成功! 是否继续添加车辆(1->yesor2->no)"<< endl; cin>>b; if(b=2){ cout<<"系统返回中,请稍后! "< break; } } elseum==n){ cout<<"车辆编号: "< cout<<"车名: "< cout<<"购买日期: "< cout<<"生产厂家: "< cout<<"行驶里程: "< cout<<"车辆价格: "< cout<<"驾驶员的名字: "< cout<<"驾驶员的手机号: "< cout<<"车型: "< cout<<"(1->摩托车,2->汽车,3->客车,4->面包车,5->货车)" < a++; } } if(a==0){ cout<<"编号不存在! "< } break; } case2: {intm;stringl; cout<<"输入驾驶员的名字"< cout<<"输入驾驶员的手机号"< cin>>m; for(k=0;k if(car[k].driver==l){ if(car[k].cellphone==m){ cout<<"车辆编号: "< cout<<"车名: "< cout<<"购买日期: "< cout<<"生产厂家: "< cout<<"行驶里程: "< cout<<"车辆价格: "< cout<<"驾驶员的名字: "< cout<<"驾驶员的手机号: "< cout<<"车型: "< cout<<"(1->摩托车,2->汽车,3->客车,4->面包车,5-> 货车)"< b++; } } } if(b=0){ cout<<"信息错误或不存在! "< } break; } default: cout<<"输入有误! "< break; } cout<<"按1返回主界面: "< cin>>c; if(c==1){ jiemian(); } else{ jiemian(); } } voidCar: : show(){ inti,j; if(top! =0){ cout<<"车库中所有车的基本信息: "< for(i=0;i cout<<"车辆编号: "< cout<<"车名: "< cout<<"购买日期: "< cout<<"生产厂家: "< cout<<"行驶里程: "< cout<<"车辆价格: "< cout<<"驾驶员的名字: "< cout<<"驾驶员的手机号: "< cout<<"车型: "< cout<<"(1->摩托车,2->汽车,3->客车,4->面包车,5->货车)"<< endl; } } else cout<<"车辆库为空! "< cout<<"按1返回主界面: "< cin>>j; if(j==1){ jiemian(); } else{ jiemian(); } } voidCar: : delet(){ inti,a=0; while (1){ if(top==0){ cout<<"车辆库为空将退回功能界面! "< break; }else{ cout<<"请输入要删除的车辆编号! "< cin>>i; for(intj=0;j if(car[j].num==i){ cout<<"车辆编号: "< cout<<"车名: "< cout<<"购买日期: "< cout<<"生产厂家: "< cout<<"行驶里程: "< cout<<"车辆价格: "< cout<<"驾驶员的名字: "< cout<<"驾驶员的手机号: "< cout<<"车型: "< cout<<"(1->摩托车,2->汽车,3->客车,4->面包车,5-> 货车)"< cout<<"是否确定信息并删除! (1->是,2->否)"< intn; cin>>n; if(n==1){ car[j].num=car[top-1].num; car[j].name=car[top-1].name; car[j].time=car[top-1].time; car[j].made=car[top-1].made; car[j].distance=car[top-1].distance; car[j].price=car[top-1].price; car[j].driver=car[top-1].driver; car[j].cellphone=car[top-1].cellphone; car[j].type=car[top-1].type; top--; a++; }else if(n==2){ cout<<"系统返回中! "< }else{ cout<<"输入错误系统返回中。 。 。 "< } } } if(a==0){ cout<<"此编号不存在,不能进行删除,请重新输入! "< }else{ cout<<"删除成功! 系统将返回功能界面...."< break; } } } jiemian(); } voidCar: : sum(){ inti,j,l,m,a=0,b=0,c=0,d=0,f=0; cout<<"1-统计里程"< cout<<"2-统计资产"< cout<<"3-统计驾驶员"< cout<<"4-统计车辆数"< cout<<"输入统计的选项: "< cin>>i; if(i>0&&i<5){ switch(i){ case1: cout<<"1-总里程"< cout<<"2-各类车的总里程"< cout<<"输入选项: "< cin>>j; if(j==1||j==2){ switch(j){ case1: for(l=0;l a=a+car[l].distance; } cout<<"总里程: "< cout<<"查询成功,系统将返回主页面。 "< break; case2: for(m=0;m if(car[m].type==1){a=a+car[m].distance;} else if(car[m].type==2){b=b+ car[m].distance;} else if(car[m].type==3){c=c+ car[m].distance;} else if(car[m].type==4) {d=d+car[m].distance;} else f=f+car[m].distance; } cout<<" 摩托车的总里程: "< cout<<" 汽车的总里程: "< cout<<" 客车的总里程: "< cout<<" 面包车的总里程: "< cout<<" 货车的总里程: "< cout<<" 查询成功,系统将返回主页面。 "< < break; } } else{ cout<<"输入错误,系统返回。 "< break; } break; case2: cout<<"1-总资产"< cout<<"2-各类车的总资产"< cout<<"输入选项: "< cin>>j; if(j==1||j==2){ switch(j){ case1: for(l=0;l a=a+car[l].price; } cout<<"总资产: "< cout<<"查询成功,系统将返回主页面。 "< break; case2: for(m=0;m if(car[m].type==1){a=a+car[m].price;} else if(car[m].type==2){b=b+car[m].price;} else if(car[m].type==3){c=c+ car[m].price;} else if(car[m].type==4){d=d+ car[m].price;} else f=f+car[m].price; } cout<<" 摩托车的总资产:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- c+ 程序设计 车辆 管理 系统 实验 报告 源代码 doc
![提示](https://static.bdocx.com/images/bang_tan.gif)