#include<iostream>
#include<windows.h>
#include<fstream>
#define N 100 //车辆总存储量
using namespace std;
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.按编号查询 *"<<endl;
cout<<"* 3.按类别查询 *"<<endl;
cout<<"* 请输入你的选项:(1-3)*"<<endl;
cin>>i;
switch(i){
case 1:char m[20];
cout<<"请输入需查询车辆的制造公司:"<<endl;
cin>>m;
for(j = 0; j < top; j++)
{
if(strcmp(car[j].made, m)