C++车辆管理系统模板.docx
- 文档编号:2198336
- 上传时间:2022-10-27
- 格式:DOCX
- 页数:19
- 大小:18.93KB
C++车辆管理系统模板.docx
《C++车辆管理系统模板.docx》由会员分享,可在线阅读,更多相关《C++车辆管理系统模板.docx(19页珍藏版)》请在冰豆网上搜索。
C++车辆管理系统模板
车辆管理系统主要负责各种车辆的常规信息管理工作。
系统中的车辆主要有大客车、小轿车和卡车。
每种车辆有车辆编号、车牌号、
车辆制造公司、车辆购买时间、车辆型号(大客车、小轿车和卡车)、总公里数、
耗油量/公里、基本维护费用、养路费、累计总费用等信息。
大客车还有载客量
(最大载客数)信息,小轿车还有箱数(两厢或三厢)信息,卡车还有载重量等
信息。
每台车辆当月总费用=油价*耗油量/公里+基本维护费用。
基本维护费用:
客车:
元/月,小轿车:
1000元/月,卡车:
1500元/月
功能要求:
(1)添加车辆:
主要完成车辆信息的添加,要求编号唯一。
当添加了重复
的编号时,则提示数据添加重复并取消添加;当车辆信息库已满,则提示不能再
添加新的数据。
(2)查询车辆:
可按照三种方式来查询物品,分别为:
按车辆制造公司查询:
输入车辆制造公司,输出所查询的信息,若不存在该记录,则提示”该车辆制造公司不存在!
”;
按编号查询:
输入编号,输出所查询的信息,若不存在该记录,则提示”该
编号不存在!
”;
按类别查询:
输入类别,输出所查询的信息,若不存在记录,则提示”该类
别没有车辆!
”;
(3)显示车辆信息库:
输出当前车辆信息库中所有车辆信息,每条记录占
据一行。
(4)编辑功能:
可根据查询结果对相应的记录进行修改,修改时注意编号
的唯一性。
(5)删除车辆:
主要完成车辆信息的删除。
如果当前车辆信息库为空,则
提示”车辆信息库为空!
”,并返回操作;否则,输入要删除的编号,根据编号删
除该车辆的记录,如果该编号不在车辆信息库库中,则提示”该编号不存在”。
(6)统计信息
输出当前车辆信息库中总物品数,以及按车辆类别,统计出当前车辆信息库
中各类别的物品数并显示。
(7)车辆信息存盘:
将当前程序中的车辆信息存入文件中。
(8)读出车辆信息:
从文件中将车辆信息读入程序。
源代码:
#include
#include
#include
#include
usingnamespacestd;
intN=5;/*设置全局变量N=5,信息库最多存储5辆车辆信息*/
intn1=0;/*全局变量,记录大客车文件当前信息库信息数量*/
intn2=0;/*全局变量,记录小轿车文件当前信息库信息数量*/
intn3=0;/*全局变量,记录卡车文件当前信息库信息数量*/
ofstreamos1("file1.dat",ios:
:
binary|ios:
:
trunc);/*建立file1文件*/
ofstreamos2("file2.dat",ios:
:
binary|ios:
:
trunc);/*建立file2文件*/
ofstreamos3("file3.dat",ios:
:
binary|ios:
:
trunc);/*建立file3文件*/
classcar{/*汽车类*/
public:
stringnumber;
stringlicense_plat;/*车牌号码*/
stringcompany;
doubletime_buying;
stringmode;
doubleODO;/*总公里数*/
doubleoil_consumption;/*油耗量/公里*/
doubleoil_price;/*油价*/
doubleroad_tolt;/*养路费*/
doubleall_cost;/*累计费用*/
voidgetcar();
voidshow(){
cout< < < ~car(){} }; /*****************************/ classtruck: publiccar{/*卡车类,公有继承汽车类*/ public: doublemaintenance_charges;/*基本维护费用*/ doubleload_weight;/*卡车附加属性载重量*/ voidsetall(){ maintenance_charges=1000;/*设置基本维护费用*/ all_cost=((ODO*oil_consumption*oil_price)+(time_buying*maintenance_charges));/*计算累计费用*/} voidshow(){ car: : show(); cout<<""< ~truck(){} }; /*****************************/ classsedan: publiccar{/*小轿车类,公有继承汽车类*/ public: doublemaintenance_charges;/*基本维护费用*/ intCTNS;/*小轿车附加属性箱数*/ voidsetall(){ maintenance_charges=1500;/*设置基本维护费用*/ all_cost=((ODO*oil_consumption*oil_price)+(time_buying*maintenance_charges));/*计算累计费用*/} voidshow(){ car: : show(); cout<<""< ~sedan(){} }; /*****************************/ classcoach: publiccar{/*客车类,公有继承汽车类*/ public: doublemaintenance_charges;/*基本维护费用*/ intapacity;/*大客车附加属性载客量*/ voidsetall(){ maintenance_charges=1000;/*设置基本维护费用*/ all_cost=((ODO*oil_consumption*oil_price)+(time_buying*maintenance_charges));/*计算累计费用*/} voidshow(){ car: : show(); cout<<""< ~coach(){} }; /*****************************/ voidcar: : getcar(){/*getcar()函数实现*/ cout<<"车牌号: ";cin>>license_plat; cout<<"车辆制造公司: ";cin>>company; cout<<"车辆购买时间(月): ";cin>>time_buying; cout<<"车辆型号(1大客车2小轿车3卡车): ";cin>>mode; cout<<"车辆总公里数: ";cin>>ODO; cout<<"车辆油耗(每公里): ";cin>>oil_consumption; cout<<"油价: ";cin>>oil_price; cout<<"车辆养路费: ";cin>>road_tolt; } /*****************************/ coach*getcoach(){/*设置函数获取客车库中信息存储于数组中,方便之后提取*/ inti; coach*head=newcoach[n1]; ifstreamis1("file1.dat",ios: : in|ios: : binary); for(i=0;i is1>>head[i].number>>head[i].license_plat>>head[i].company>>head[i].time_buying>>head[i].mode>>head[i].ODO >>head[i].oil_consumption>>head[i].oil_price>>head[i].road_tolt>>head[i].all_cost>>head[i].apacity; } is1.close(); returnhead; } /*****************************/ sedan*getsedan(){/*设置函数获取小轿车库中信息存储于数组中,方便之后提取*/ inti; sedan*head=newsedan[n2]; ifstreamis2("file2.dat",ios: : in|ios: : binary); for(i=0;i is2>>head[i].number>>head[i].license_plat>>head[i].company>>head[i].time_buying>>head[i].mode>>head[i].ODO >>head[i].oil_consumption>>head[i].oil_price>>head[i].road_tolt>>head[i].all_cost>>head[i].CTNS; } is2.close(); returnhead; } /*****************************/ truck*gettruck(){/*设置函数获取客车库中信息存储于数组中,方便之后提取*/ inti; truck*head=newtruck[n3]; ifstreamis3("file3.dat",ios: : in|ios: : binary); for(i=0;i { is3>>head[i].number>>head[i].license_plat>>head[i].company>>head[i].time_buying>>head[i].mode>>head[i].ODO >>head[i].oil_consumption>>head[i].oil_price>>head[i].road_tolt>>head[i].all_cost>>head[i].load_weight; } is3.close(); returnhead; } /*****************************/ intadd(){/*添加函数*/ inti,j,k,x; stringstr; coachc; sedans; truckt; cout<<"请输入添加数量: "; cin>>x; for(i=0;i intflag=0; cout<<"请选择第"< "< cout<<"*************************************************"< cout<<"*1大客车2小轿车3卡车*"< cout<<"*************************************************"< cin>>j; if(j==0)return(0);/*用
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 车辆 管理 系统 模板