#include<stdio.h>
struct car{
char typ[20];
char name[20];
char num[20];
int charge;
};
struct car j[12]={{"轿车","宝马730","川B66666",800},{"轿车","奔驰s","川B8888",1000},{"轿车","大众途观","川B66699",700},{"轿车","丰田皇冠","川B88899",650},
{"客车","金杯16座","川B88900",1000},{"客车","金杯34座","川B88901",1600},{"客车","宇通16座","川B88902",1100},{"客车","宇通34座","川B88903",1800},
{"货车","东风5t","川B88904 ",500},{"货车","东风10t","川B88905",1200},{"货车","解放5t","川B88906",500},{"货车","解放10t","川B88907",1200}};
void add();
void del();
void change();
void total();
int main()
{
printf("请选择:\n");
printf("1. 加入车辆信息 \n");
printf("2. 删除车辆信息 \n");
printf("3. 更改车辆信息 \n");
printf("4. 计算营业额 \n");
int aa;
scanf("%d",&aa);
switch(aa){
case 1:
printf("请选择:1.轿车、2.客车、3.货车");
int bb;
scanf("%d",&bb);
switch(bb){
case 1:
printf("请选择:1.宝马730、2.奔驰s、3.大众途观、4.丰田皇冠\n");
int cc;
scanf("%d",&cc);
switch(cc);
printf("您增加的车为:%s\n",j[0].name);break;
case 2:
printf("请选择:1.金杯16座、2.金杯34座、3.宇通16座、4.宇通34座\n");
int dd;
scanf("%d",&dd);
switch(dd);
printf("您增加的车为:%s\n",j[4].name);break;
case 3:
printf("请选择:1.东风 5t、2.东风 10t、3.解放 5t、4.解放 10t\n");
int ee;
scanf("%d",&ee);
switch(ee);
printf("您增加的车为:%s\n",j[8].name);
}break;
case 2:
int ff;
scanf("%d",&ff);
switch(ff){
case 1:
printf("请选择:1.轿车、2.客车、3.货车");
int gg;
scanf("%d",&gg);
switch(gg){
case 1:
printf("请选择:1.宝马730、2.奔驰s、3.大众途观、4.丰田皇冠\n");
int hh;
scanf("%d",&hh);
switch(hh);
printf("您增加的车为:%s\n",j[0].name);break;
case 2:
printf("请选择:1.金杯16座、2.金杯34座、3.宇通16座、4.宇通34座\n");
int ii;
scanf("%d",&ii);
switch(ii);
printf("您增加的车为:%s\n",j[4].name);break;
case 3:
printf("请选择:1.东风 5t、2.东风 10t、3.解放 5t、4.解放 10t\n");
int ee;
scanf("%d",&ee);
switch(ee);
printf("您删除的车为:%s\n",j[8].name);
}
case 3:
int kk;
scanf("%d",&kk);
switch(kk){
case 1:
printf("请选择:1.宝马730、2.奔驰s、3.大众途观、4.丰田皇冠\n");
int ll;
scanf("%d",&ll);
switch(ll);
printf("您增加的车为:%s\n",j[0].name);break;
case 2:
printf("请选择:1.金杯16座、2.金杯34座、3.宇通16座、4.宇通34座\n");
int mm;
scanf("%d",&mm);
switch(mm);
printf("您增加的车为:%s\n",j[4].name);break;
case 3:
printf("请选择:1.东风 5t、2.东风 10t、3.解放 5t、4.解放 10t\n");
int nn;
scanf("%d",&nn);
switch(nn);
printf("您更改的车为:%s\n",j[8].name);break;
}
}
}
return 0;
}
你明明定义了函数,最后也没实现,也没有调用。switch里套switch,代码格式还这么乱,你自己不晕吗。。。一定要养成良好的代码书写规范,这样方便自己梳理逻辑,有问题也好检查。主函数尽量简短,能放在函数里的尽量放在函数里。
你的代码修改如下:
#include<stdio.h>
struct car
{
char typ[20];
char name[20];
char num[20];
int charge;
};
struct car j[12]={{"轿车","宝马730","川B66666",800},{"轿车","奔驰s","川B8888",1000},
{"轿车","大众途观","川B66699",700},{"轿车","丰田皇冠","川B88899",650},
{"客车","金杯16座","川B88900",1000},{"客车","金杯34座","川B88901",1600},
{"客车","宇通16座","川B88902",1100},{"客车","宇通34座","川B88903",1800},
{"货车","东风5t","川B88904 ",500},{"货车","东风10t","川B88905",1200},
{"货车","解放5t","川B88906",500},{"货车","解放10t","川B88907",1200}};
void add();
void del();
void change();
void total();
int main()
{
while(1)
{
printf("请选择:\n");
printf("1. 加入车辆信息 \n");
printf("2. 删除车辆信息 \n");
printf("3. 更改车辆信息 \n");
printf("4. 计算营业额 \n");
printf("0. 退出系统 \n");
int aa;
scanf("%d",&aa);
switch(aa)
{
case 1:
add();
break;
case 2:
del();
break;
case 3:
change();
break;
case 4:
total();
break;
case 0:
return 0;//退出循环
}
}
return 0;
}
void add()
{
int bb;
int cc;
int dd;
int ee;
printf("请选择:1.轿车、2.客车、3.货车");
scanf("%d",&bb);
switch(bb)
{
case 1:
printf("请选择:1.宝马730、2.奔驰s、3.大众途观、4.丰田皇冠\n");
scanf("%d",&cc);
//switch(cc);
printf("您增加的车为:%s\n",j[cc-1].name);break;
case 2:
printf("请选择:1.金杯16座、2.金杯34座、3.宇通16座、4.宇通34座\n");
scanf("%d",&dd);
//switch(dd);
printf("您增加的车为:%s\n",j[3+dd].name);break;
case 3:
printf("请选择:1.东风 5t、2.东风 10t、3.解放 5t、4.解放 10t\n");
scanf("%d",&ee);
//switch(ee);
printf("您增加的车为:%s\n",j[7+ee].name);
}
}
void del()
{
int gg;
int hh;
int ii;
int ee;
printf("请选择:1.轿车、2.客车、3.货车");
scanf("%d",&gg);
switch(gg)
{
case 1:
printf("请选择:1.宝马730、2.奔驰s、3.大众途观、4.丰田皇冠\n");
scanf("%d",&hh);
//switch(hh);
printf("您增加的车为:%s\n",j[hh-1].name);break;
case 2:
printf("请选择:1.金杯16座、2.金杯34座、3.宇通16座、4.宇通34座\n");
scanf("%d",&ii);
//switch(ii);
printf("您增加的车为:%s\n",j[3+ii].name);break;
case 3:
printf("请选择:1.东风 5t、2.东风 10t、3.解放 5t、4.解放 10t\n");
scanf("%d",&ee);
//switch(ee);
printf("您删除的车为:%s\n",j[7+ee].name);
}
}
void change()
{
int kk;
int ll;
int mm;
int nn;
printf("请选择:1.轿车、2.客车、3.货车");
scanf("%d",&kk);
switch(kk)
{
case 1:
printf("请选择:1.宝马730、2.奔驰s、3.大众途观、4.丰田皇冠\n");
scanf("%d",&ll);
//switch(ll);
printf("您增加的车为:%s\n",j[ll-1].name);break;
case 2:
printf("请选择:1.金杯16座、2.金杯34座、3.宇通16座、4.宇通34座\n");
scanf("%d",&mm);
//switch(mm);
printf("您增加的车为:%s\n",j[3+mm].name);break;
case 3:
printf("请选择:1.东风 5t、2.东风 10t、3.解放 5t、4.解放 10t\n");
scanf("%d",&nn);
switch(nn);
printf("您更改的车为:%s\n",j[7+nn].name);break;
}
}
void total()
{
//添加你的代码
}
你这个switch嵌套的让人要晕过去啊