计算体重指数。 体重指数将您的体重与身高进行比较,计算方法是将体重(千克)除以身高(米)的平方。它可以让您了解自己的身高是否体重不足,健康体重,超重或肥胖。
体重指数分类:
如果您体重不足或超重或肥胖,请根据您的身高和年龄确定理想体重。
使用Devine公式估算理想体重(kg):
男性:func()
女性:IBW = 50 kg + 2.3 kg for each inch over 5 feet.
IBW = 45.5 kg + 2.3 kg for each inch over 5 feet.
帮助我仍然不知道如何执行这些功能。请帮帮我。
答案 0 :(得分:2)
您应该使用方法中使用的参数来计算BMI。 您的变量BMI,高度和重量最初未在函数中声明。相反,你应该将BMI声明为double,并使用height和weight作为函数参数。
此外,您需要从函数返回BMI的值。您错误地返回calculateBMI,它不是函数内的有效标识符。
工作代码为: -
double calculateBMI(double weight, double height)
{
double BMI = weight / (height*height);
return BMI;
}
另外,你还没有在main()中调用方法calculateBMI()。
...
printf("Enter your weight in kilograms:\n"); //Input your weight in kilograms here
scanf("%lf", &weight);
printf("Enter your height in metres:\n"); //Input your height in metres here
scanf("%lf", &height);
// add below line in your code to call the function.
BMI = calculateBMI(height,weight);
printf("BMI categories:\n");
...
我还建议你阅读更多关于C语言的功能。你需要一些更基本的功能知识(也很难练习)。
编辑--->根据OP的评论,最终的代码是:
#include <stdio.h>
#include <stdlib.h>
double calculateBMI(double weight, double height);
int main(void)
{
printf("Calculate your BMI\n"); //Calculation of body mass index (BMI)
double w, h, BMI;
printf("Enter your weight in kilograms:\n", w); //Input your weight in kilograms here
scanf("%lf", &w);
printf("Enter your height in metres:\n", h); //Input your height in metres here
scanf("%lf", &h);
BMI = calculateBMI(w,h);
printf("Your BMI is %lf\n", BMI)
printf("BMI categories:\n");
if (BMI < 18.5)
{
printf("Your BMI is %lf and you are currently underweight.\n");
}
else if (BMI >= 18.5 && BMI <= 24.9)
{
printf("Your BMI is %lf and you are normal weight.\n");
}
else if (BMI >= 25 && BMI <= 29.9);
{
printf("Your BMI is %lf and you are currently overweight.\n");
}
else (BMI >= 30);
{
printf("Your BMI is %lf and you are obese.\n");
}
return 0;
}
double calculateBMI(double weight, double height)
{
double result;
result = weight / (height*height);
return result;
}
答案 1 :(得分:-1)
你的职能:
double calculateBMI(double w, double h)
{
BMI = weight / (height*height);
return calculateBMI;
}
这里调用函数并返回函数名“calculateBMI”。
返回你想要的正确值。这不是一个递归函数。