#include
int main()
{
int h;
char sex;
float mg, max, min;
printf("请输入身高、性别:");
scanf("%d %c",&h,&sex);
switch(sex)
{
case 'm' : mg = 50 + (2.3 * (h-152))/2.54; break;
case 'w' : mg = 45.5 + (2.3 * (h-152))/2.54; break;
default : mg = -1;break;
}
min = mg * 0.9;
max = mg * 1.1;
printf("在%f~%f内为标准体重\n", min, max);
return 0;
}
在scanf("%d%c", &h, &sex);中%d和%c之间必须要分开,否则第二个数据无法输进去。
语法错误是:befault : mg = -1;
应该是:default: mg = -1;
按你写的代码:scanf("%d%c", &h, &sex);
输入数据时:整数与字符之间不能有空格,否则变量sex会将空格读入作为内容