营养学大学排名:哪错了?? 请多指教!这是老师留的作业。谢谢

来源:百度文库 编辑:高考问答 时间:2024/04/29 15:24:23
#include<stdio.h>
main()
{
int age,b;
char name,sex;
printf("please input a name,the sex(f or m) and the age(>=18) with a space between them");
scanf("%c %c %d",&name,&sex,&age);
if(sex=='f')
{ if(age>=50) b=1;
else { if(age>=40) b=2;
else b=3; }
}
else
{ if(age>=60) b=1;
else { if(age>=50) b=2;
else b=3; }
}
swith(b)
{case 1 :printf("yi tui xui");breake;
case 2 :printf("yi li gang");breake;
case 3 :printf("zheng zai gang");break;
default:printf("have error in your input");
}
getch();
}

这也错了:
if(sex=='f')
{
if(age>=50)
b=1;
else if(age>=40)
b=2;
else b=3;
}
else
{ if(age>=60)
b=1;
else if(age>=50)
b=2;
else b=3;
}

switch和break写错了,修改如下:

#include<stdio.h>
main()
{
int age,b;
char name,sex;
printf("please input a name,the sex(f or m) and the age(>=18) with a space between them");
scanf("%c %c %d",&name,&sex,&age);
if(sex=='f')
{ if(age>=50) b=1;
else { if(age>=40) b=2;
else b=3; }
}
else
{ if(age>=60) b=1;
else { if(age>=50) b=2;
else b=3; }
}
switch(b)
{case 1 :printf("yi tui xui");break;
case 2 :printf("yi li gang");break;
case 3 :printf("zheng zai gang");break;
default:printf("have error in your input");
}
getch();
}

输入的名字一般多于一个字符
而你传给的是一个字符变量name
可以先输入名字传给String类型的就可以了
如果还有错的话,有可能就是没有初始话变量
int age=0,b=0;
string name='a name';
char sex='m';
很久没用c了 没有运行
你改后自己试试看吧