兮... 2021-12-16 08:51 采纳率: 66.7%
浏览 28
已结题

想问一下怎么组装啊,我后半段和前半段弄不到一起,弄到一起后显示有误

#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()
{
int choice;
printf("请选择你的身份;\n1.管理员\n2.用户\n");
scanf("%d",&choice);
switch(choice){
case 1://管理员模块
{
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()
{return 0;//添加你的代码
}
case 2:{ // 用户模块
printf("轿车:\n");
printf("品牌 车牌 日租金 折扣\n");
printf("宝马730 川B66666 800 days>7天9折/>30天8折/>150天7折\n");
printf("奔驰S 川B88888 1000 days>7天9折/>30天8折/>150天7折\n");
printf("大众途观 川B66699 700 days>7天9折/>30天8折/>150天7折\n");
printf("丰田皇冠 川B88899 650 days>7天9折/>30天8折/>150天7折\n");
printf("客车:\n");
printf("品牌 车牌 日租金 折扣\n");
printf("金杯16座 川B88900 1000 days>=3天9折/>=7天8折/>=30天7折/=150天6折\n");
printf("金杯34座 川B88901 1600 days>=3天9折/>=7天8折/>=30天7折/=150天6折\n");
printf("宇通16座 川B88902 1100 days>=3天9折/>=7天8折/>=30天7折/=150天6折\n");
printf("宇通34座 川B88903 1800 days>=3天9折/>=7天8折/>=30天7折/=150天6折\n");
printf("货车:\n");
printf("品牌 车牌 日租金 折扣\n");
printf("东风 5t 川B88904 500 days>=3天9.5折/>=7天8.5折/>=30天7.5折/=150天7折\n");
printf("东风 10t 川B88905 1200 days>=3天9.5折/>=7天8.5折/>=30天7.5折/=150天7折\n");
printf("解放 5t 川B88906 500 days>=3天9.5折/>=7天8.5折/>=30天7.5折/=150天7折\n");
printf("解放 10t 川B88907 1200 days>=3天9.5折/>=7天8.5折/>=30天7.5折/=150天7折\n");
printf("请选择汽车类型:1.轿车 2.客车 3.货车\n");
}
int b;
scanf("%d",&b);
switch(b){
case 1:printf("请选择车辆品牌:1.宝马730 2.奔驰s 3.大众途观 4.丰田皇冠\n");
int c;
scanf("%d",&c);
switch(c){
case 1:
printf("请输入租车天数:\n");
int d,t;
scanf("%d",&d);
if(d>0&&d<8)
printf("您应付金额为%d\n",t=800d);
else if(d>7&&d<31)
printf("您应付金额%d\n",t=800d*9/10);
else if(d>30&&d<151)
printf("您应付金额%d\n",t=800*d*8/10);
else if(d>150)
printf("您应付金额%d\n",t=800d7/10); //第一个完成
printf("您租的车为:%s %s %d",j[0].name,j[0].num,t);break;
case 2:
printf("请输入租车天数:\n");
int e,u;
scanf("%d",&e);
if(e>0&&e<8)
printf("您应付金额为%d\n",u=1000*e);
else if(e>7&&e<31)
printf("您应付金额%d\n",u=1000*e*9/10);
else if(e>30&&e<151)
printf("您应付金额%d\n",u=1000*e*8/10);
else if(e>150)
printf("您应付金额%d\n",u=1000e7/10); //第二个完成
printf("您租的车为:%s %s %d",j[1].name,j[1].num,u);break;
case 3:
printf("请输入租车天数:\n");
int f,v;
scanf("%d",&f);
if(f>0&&f<8)
printf("您应付金额为%d\n",v=700*f);
else if(f>7&&f<31)
printf("您应付金额%d\n",v=700*f*9/10);
else if(e>30&&e<151)
printf("您应付金额%d\n",v=700*f*8/10);
else if(f>150)
printf("您应付金额%d\n",v=700f7/10); //第三个完成
printf("您租的车为:%s %s %d",j[2].name,j[2].num,v);break;
case 4:
printf("请输入租车天数:\n");
int g,w;
scanf("%d",&g);
if(g>0&&g<8)
printf("您应付金额为%d\n",w=650*g);
else if(g>7&&g<31)
printf("您应付金额%d\n",w=650*g*9/10);
else if(g>30&&g<151)
printf("您应付金额%d\n",w=650*g*8/10);
else if(g>150)
printf("您应付金额%d\n",w=650g7/10); //第四个完成
printf("您租的车为:%s %s %d",j[3].name,j[3].num,w);break;
};break;
case 2:
printf("请选择车辆品牌:1.金杯16座 2.金杯34座 3.宇通16座 4.宇通34座\n");
int h;
scanf("%d",&h);
switch(h){
case 1:
printf("请输入租车天数:\n");
int k,x;
scanf("%d",&k);
if(k>0&&k<3)
printf("您应付金额为%d\n",x=1000*k);
else if(k>2&&k<7)
printf("您应付金额%d\n",x=1000*k*9/10);
else if(k>6&&k<30)
printf("您应付金额%d\n",x=1000*k*8/10);
else if(k>29&&k<150)
printf("您应付金额%d\n",x=1000*k*7/10);
else if(k>=150)
printf("您应付金额为%d\n",x=1000k6/10);
printf("您租的车为:%s %s %d",j[4].name,j[4].num,x);break;
case 2:
printf("请输入租车天数:\n");
int l,y;
scanf("%d",&l);
if(l>0&&l<3)
printf("您应付金额为%d\n",y=1600*l);
else if(l>2&&l<7)
printf("您应付金额%d\n",y=1600*l*9/10);
else if(l>6&&l<30)
printf("您应付金额%d\n",y=1600*l*8/10);
else if(l>29&&l<150)
printf("您应付金额%d\n",y=1600*l*7/10);
else if(l>=150)
printf("您应付金额为%d\n",y=160016/10);
printf("您租的车为:%s %s %d",j[5].name,j[5].num,y);break;
case 3:
printf("请输入租车天数:\n");
int m,z;
scanf("%d",&m);
if(m>0&&m<3)
printf("您应付金额为%d\n",z=1100m);
else if(m>2&&m<7)
printf("您应付金额%d\n",z=1100*m*9/10);
else if(m>6&&m<30)
printf("您应付金额%d\n",z=1100*m*8/10);
else if(m>29&&m<150)
printf("您应付金额%d\n",z=1100*m*7/10);
else if(m>=150)
printf("您应付金额为%d\n",z=1100m6/10);
printf("您租的车为:%s %s %d",j[6].name,j[6].num,z);break;
case 4:
printf("请输入租车天数:\n");
int n,a1;
scanf("%d",&n);
if(n>0&&n<3)
printf("您应付金额为%d\n",a1=1800*n);
else if(n>2&&n<7)
printf("您应付金额%d\n",a1=1800*n*9/10);
else if(n>6&&n<30)
printf("您应付金额%d\n",a1=1800*n*8/10);
else if(n>29&&n<150)
printf("您应付金额%d\n",a1=1800*n*7/10);
else if(n>=150)
printf("您应付金额为%d\n",a1=1800n6/10);
printf("您租的车为:%s %s %d",j[7].name,j[7].num,a1);break;
};break;
case 3:
printf("请选择车辆品牌:1.东风5t 2.东风10t 3.解放5t 4.解放10t\n");
int o;
scanf("%d",&o);
switch(o){
case 1:
printf("请输入租车天数:\n");
int p,a2;
float t;
scanf("%d",&p);
if(p>0&&p<3)
printf("您应付金额为%d\n",a2=500*p);
else if(p>2&&p<7)
printf("您应付金额%d\n",a2=500*p*95/100);
else if(p>6&&p<30)
printf("您应付金额%d\n",a2=500*p*85/100);
else if(p>29&&p<150)
printf("您应付金额%d\n",a2=500*p*75/100);
else if(p>=150)
printf("您应付金额为%d\n",a2=500p7/10);
printf("您租的车为:%s %s %d",j[8].name,j[8].num,a2);break;
case 2:
printf("请输入租车天数:\n");
int q,a3;
scanf("%d",&q);
if(q>0&&q<3)
printf("您应付金额为%d\n",a3=1200*q);
else if(q>2&&q<7)
printf("您应付金额%d\n",a3=1200*q*95/100);
else if(q>6&&q<30)
printf("您应付金额%d\n",a3=1200*q*85/100);
else if(q>29&&q<150)
printf("您应付金额%d\n",a3=1200*q*75/100);
else if(q>=150)
printf("您应付金额为%d\n",a3=1200q7/10);
printf("您租的车为:%s %s %d",j[9].name,j[9].num,a3);break;
case 3:
printf("请输入租车天数:\n");
int r,a4;
scanf("%d",&r);
if(r>0&&r<3)
printf("您应付金额为%d\n",a4=500*r);
else if(r>2&&r<7)
printf("您应付金额%d\n",a4=500*r*95/100);
else if(r>6&&r<30)
printf("您应付金额%d\n",a4=500*r*85/100);
else if(r>29&&r<150)
printf("您应付金额%d\n",a4=500*r*75/100);
else if(r>=150)
printf("您应付金额为%d\n",a4=500r7/10);
printf("您租的车为:%s %s %d",j[10].name,j[10].num,a4);break;
case 4:
printf("请输入租车天数:\n");
int s,a5;
scanf("%d",&s);
if(s>0&&s<3)
printf("您应付金额为%d\n",a5=1200*s);
else if(s>2&&s<7)
printf("您应付金额%d\n",a5=1200*s*95/100);
else if(s>6&&s<30)
printf("您应付金额%d\n",a5=1200*s*85/100);
else if(s>29&&s<150)
printf("您应付金额%d\n",a5=1200*s*75/100);
else if(s>=150)
printf("您应付金额为%d\n",a5=1200s
7/10);
printf("您租的车为:%s %s %d",j[1].name,j[1].num,a5);break;
}
}
}
return 0;
}

  • 写回答

1条回答 默认 最新

  • bekote 2021-12-16 09:48
    关注

    把这些方法都放到main函数的下面,不要放在main的里面

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月24日
  • 已采纳回答 12月16日
  • 创建了问题 12月16日

悬赏问题

  • ¥188 寻找能做王者评分提取的
  • ¥15 matlab用simulink求解一个二阶微分方程,要求截图
  • ¥30 乘子法解约束最优化问题的matlab代码文件,最好有matlab代码文件
  • ¥15 写论文,需要数据支撑
  • ¥15 identifier of an instance of 类 was altered from xx to xx错误
  • ¥100 反编译微信小游戏求指导
  • ¥15 docker模式webrtc-streamer 无法播放公网rtsp
  • ¥15 学不会递归,理解不了汉诺塔参数变化
  • ¥15 基于图神经网络的COVID-19药物筛选研究
  • ¥30 软件自定义无线电该怎样使用