本人用C++写的一个车辆管理系统,主要负责各种车辆的常规信息管理工作。具体代码如下:
#include<iostream.h>
#include<windows.h>#include<fstream.h>
#define N 20 //车辆总存储量
struct Cars{
int num; //车辆编号
int pnum; //车牌号
char made[20]; //车辆制造公司
double year; //车辆购买时间
char type; //车辆型号,B-大客车,C-小轿车,L-卡车
int km; //总公里数
int cost; //基本维护费用
};
class Manager{
private:
Cars car[N];
int people[N]; //载客量
int coach[N]; //箱数
int weight[N]; //载重量
int top; //记录当前车辆数量
public:
Manager(){top = 0;}; //车辆初始值为0
void add(); //添加函数
void search(); //查询函数
void show(); //显示函数
void edit(); //编辑函数
void delet(); //删除函数
void sum(); //统计函数
void read(); //读取函数
void write(); //存储函数
void jiemian(); //总界面
};
void Manager::add(){
int a = 0, y;
while(1){
if(top < N){
int i;
cout<<"请输入需添加的车辆信息:"<<endl;
cout<<"车辆编号:";
cin>>i;
for(int j = 0; j < top; j++){
if(car[j].num == i){
cout<<"编号重复,添加失败!系统将自动返回..."<<endl;
a++;
break;
}
}
if(a == 0){ //编号不重复
car[top].num = i;
cout<<"车牌号:";
cin>>car[top].pnum;
cout<<"车辆制造公司:";
cin>>car[top].made;
cout<<"购买时间:";
cin>>car[top].year;
cout<<"车辆型号(B-大客车,C-小轿车,L-卡车):";
cin>>car[top].type;
cout<<"总公里数:";
cin>>car[top].km;
if(car[top].type == 'B'|| car[top].type == 'b'){
cout<<"载客量:";
cin>>people[top];
car[top].cost = 2000;
}
else if(car[top].type == 'C'|| car[top].type == 'c'){
cout<<"车厢数:";
cin>>coach[top];
car[top].cost = 1000;
}
else{
cout<<"载重量:";
cin>>weight[top];
car[top].cost = 1500;
}
top++;
cout<<"是否继续添加?(1-是, 2-否)"<<endl;
cin>>y;
if(y == 2){
cout<<"请稍等,系统将自动返回功能界面..."<<endl;
break;
}
}
else //编号重复
break;
}
else{
cout<<"车辆信息库已满,不能再添加!"<<endl;
cout<<"系统将自动返回功能界面..."<<endl;
break;
}
}
Sleep(2000);
jiemian();
}
void Manager::search(){
int i, j, a = 0, b;
char k;
cout<<"1.按车辆制造公司查询"<<endl;
cout<<"2.按编号查询