C 如何使用函数计算BMI?
计算体重指数。 体重指数将你的体重和身高进行比较,计算方法是将你的体重(千克)除以身高(米)的平方。它能让你知道你是体重不足、体重健康、超重还是肥胖 体重指数类别:C 如何使用函数计算BMI?,c,function,codeblocks,C,Function,Codeblocks,计算体重指数。 体重指数将你的体重和身高进行比较,计算方法是将你的体重(千克)除以身高(米)的平方。它能让你知道你是体重不足、体重健康、超重还是肥胖 体重指数类别: 体重不足=18.5&&BMI=25&&BMI=30); { printf(“您的体重指数为%lf,您肥胖。\n”); } 返回0; } 双倍计算BMI(双倍重量,双倍高度) { 双重结果; 结果=体重/(身高*身高); 返回结果; } 帮帮忙,我还不知道怎么做这些功能。请帮助我。您的功能: double calculateBMI(
double calculateBMI(double w, double h)
{
BMI = weight / (height*height);
return calculateBMI;
}
这里调用函数并返回函数名“calculateBMI”
返回所需的正确值。这不是递归函数。应使用方法中使用的参数来计算BMI。 变量BMI、身高和体重最初未在函数中声明。相反,您应该将BMI声明为双倍,并使用身高和体重作为函数参数 此外,还需要从函数中返回BMI的值。您返回的calculateBMI不正确,它不是函数中的有效标识符 工作守则是:-
double calculateBMI(double weight, double height)
{
double BMI = weight / (height*height);
return BMI;
}
另外,您还没有在main()中调用calculateBMI()方法
我还建议您阅读更多关于C中函数的内容。您需要一些关于函数的基础知识(也要努力练习)
编辑--->根据OP的评论,最终代码为:
#包括
#包括
双重计算BMI(双重重量,双重高度);
内部主(空)
{
printf(“计算你的体重指数”;//计算体重指数(BMI)
双w,h,BMI;
printf(“以千克为单位输入您的体重:\n”,w);//在此处以千克为单位输入您的体重
扫描频率(“%lf”、&w);
printf(“以米为单位输入您的高度:\n',h);//在此处以米为单位输入您的高度
扫描频率(“%lf”、&h);
BMI=计算的BMI(w,h);
printf(“您的体重指数为%lf\n”,体重指数)
printf(“BMI类别:\n”);
如果(体重指数<18.5)
{
printf(“您的体重指数为%lf,您目前体重不足。\n”);
}
否则,如果(体重指数>=18.5&&BMI=25&&BMI=30);
{
printf(“您的体重指数为%lf,您肥胖。\n”);
}
返回0;
}
双倍计算BMI(双倍重量,双倍高度)
{
双重结果;
结果=体重/(身高*身高);
返回结果;
}
您遇到了什么问题?你的问题是什么?我的函数和返回有问题。你能帮我指出我哪里做错了并增强我的编码吗?对于初学者来说,你实际上并没有在任何地方调用你的函数。若要继续,请将printf
与需要参数但不提供这些参数的格式化代码一起使用(导致未定义的行为)。最后,您使用了大量未初始化的变量(再次导致未定义的行为)。哦,代码甚至不应该编译,因为您使用的变量未在calculateBMI
函数中定义,如果你是C语言的初学者,我建议你后退几步,用最简单的“hello world”程序重新开始,并从那里开始迈出一小步。你也应该帮助你。那也不会编译,体重指数,体重和身高从未声明过。是的,我错过了,你们能帮我吗?是的,体重指数应该返回,而不是函数。感谢you@A.nonymous-还要检查编辑。@A.nonymous还有一件事没有调用calculateBMI()的函数,请检查相同的。帮助我刚刚编辑了代码。但我仍然不知道这是对还是错。帮助。您的ret
和calculateBMI()
都在进行相同的计算!请不要使用ret计算BMI,这是calculateBMI()函数的目的@不重要的
double calculateBMI(double weight, double height)
{
double BMI = weight / (height*height);
return BMI;
}
...
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");
...
#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;
}