这不会编译,我收到错误:')之前的预期标识符'令牌信息。这是一个BMI计算器。不知道我的语法出错了。
int main()
{
int wtlb, htin, bmi;
printf("Enter your weight lbs: ");
scanf("%d", &wtlb);
printf("Enter your height inches: ");
scanf("%d", &htin);
bmi = 703 * wtlb / pow(htin, 2);
if (bmi < 18.5)
{
printf("Your bmi is underweight");
}
else if (bmi > 18.5) && (bmi < 24.9);
{
printf("Your bmi is normal")
}
else if (bmi > 25.0) && (bmi < 29.99)
{
printf("Your bmi is overweight");
}
else (bmi > 30.0)
{
printf("Your bmi is obese");
}
return 0;
}
感谢您的时间。
答案 0 :(得分:3)
问题在于:
// here ------------v
else if (bmi > 18.5) && (bmi < 24.9);
你在行尾有一个迷路分号。删除它。
除此之外,您需要将整个表达式括在括号中以满足if
条件:
else if ((bmi > 18.5) && (bmi < 24.9))
这里也是:
else if ((bmi > 25.0) && (bmi < 29.99))