求问一道C语言编程题啊

Description体重指数计算器是体重与身高之比值,知道它很重要,可以了解你的健康情况,你的体重是不是标准体重、超重和肥胖等。编写一个体重指数计算器,只需要输入身高与... Description
体重指数计算器是体重与身高之比值,知道它很重要,可以了解你的健康情况,你的体重是不是标准体重、超重和肥胖等。编写一个体重指数计算器,只需要输入身高与体重,即可计算出体重指数。

体重指数(BMI--Body Mass Index)是评估体重与身高比例的参考指数,它的计算公式为:体重(kg)除以身高(m)的平方。判断结论为:
BMI <19 体重偏低
[19,25) 健康体重
[25,30) 超重
[30,40) 严重超重
>=40 极度超重Input
输入为多行,每行包含2个实数:第一个是身高(以cm为单位)、第二个是体重(以kg为单位),两个数据均为正数。两者之间用一个空格隔开。

Output
输出为多行,每行与上述输入一一对应。每行输出的第一个实数是体重指数,保留2位小数。然后是一个空格,接着是判定结论:
lower:体重偏低
health:健康体重
heavy:超重
super heavy:严重超重
extra heavy:极度超重。

Sample Input
168 80
185 85
Sample Output
28.34 heavy
24.84 health
HINT
注意:输入的身高是以cm为单位的;计算BMI时,身高是以m为单位的。
展开
 我来答
我透明_的
推荐于2016-08-15 · TA获得超过190个赞
知道小有建树答主
回答量:214
采纳率:0%
帮助的人:164万
展开全部
#include <stdio.h>
int main()
{
float stature=0,weight=0;
double index=0;
char x;
ctn:
printf("input stature(kg):");
scanf("%f",&stature);
printf("input weight(m):");
scanf("%f",&weight);
if(stature<=0||weight<=0)
printf("err stature<=0 or weight<=0");
index=stature/((weight/100)*(weight/100));
if( index >= 18 && index <= 25)
printf("");
else if( index >= 25 && index <= 30)
printf("\n");
else if( index > 30 && index <= 35)
printf("·ÊÅÖ\n");
else if( index > 35 && index <=40)
printf("ÖжȷÊÅÖ\n");
else if( index > 40)
printf("ÖضȷÊÅÖ\n");
else
printf("²»ÊÇÈË£¡\n");
getchar();
printf("go on Y or N\n");
scanf("%c",&x);
switch(x){
case 'N':
case 'n':
return 0;
case 'y':
case 'Y':
goto ctn ;
default:
return 0;
}
}
你自己改改 不会改接着追问
追问
输出里怎么好些乱码。
追答
额 自己替换成对应的 我是从linux里复制出来的 编码格式有问题 你自己打打字吧
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式