用c语言Harris-Benedict等式 Harris-Benedict等式可以计算在你不做任何运动锻炼的时候,身体维持现在的体重所需要的卡路里。这也称为你的基础代谢率(BMR)。 对于女性来讲,BMR的计算公式为: BMR = 655 + (4.3 * weight in kilograms × 2.2) + (4.7 * height in centimeters × 0.39) - (4.7 × age in years) 对于男性来讲,BMR的计算公式为: BMR = 66 + (6.3 × weight in kilograms × 2.2) + (12.9 × height in centimeters × 0.39) - (6.8 × age in years) 一块巧克力大致含有230卡路里,请写一个程序,要求允许用户输入自己的身高,体重,年龄,以及性别(用M表示男性,用F表示女性),计算用户维持相应的体重所需要消耗的巧克力数。
时间: 2024-02-12 16:08:45 浏览: 90
好的,以下是用 C 语言编写的程序,可以计算用户维持相应体重所需要消耗的巧克力数:
```c
#include <stdio.h>
int main() {
char gender;
float weight, height;
int age;
int bmr, chocolate;
printf("请输入您的性别(M表示男性,F表示女性):");
scanf("%c", &gender);
printf("请输入您的体重(单位:千克):");
scanf("%f", &weight);
printf("请输入您的身高(单位:厘米):");
scanf("%f", &height);
printf("请输入您的年龄:");
scanf("%d", &age);
if (gender == 'M') {
bmr = 66 + (6.3 * weight * 2.2) + (12.9 * height * 0.39) - (6.8 * age);
} else if (gender == 'F') {
bmr = 655 + (4.3 * weight * 2.2) + (4.7 * height * 0.39) - (4.7 * age);
} else {
printf("性别输入错误!");
return 0;
}
chocolate = (int) (bmr / 230.0 + 0.5); // 四舍五入计算巧克力数
printf("您维持现在体重所需要消耗的巧克力数为:%d 块", chocolate);
return 0;
}
```
程序会要求用户输入性别、体重、身高和年龄,然后根据用户的性别计算基础代谢率(BMR),并将其除以每块巧克力所含的卡路里数,最后输出用户维持现在体重所需要消耗的巧克力数。
需要注意的是,由于 C 语言中整数除法会向下取整,为了正确计算巧克力数,我们需要在计算过程中将 BMR 转换为浮点数,并加上 0.5 后再进行强制类型转换。
希望这个程序能够帮到您!
阅读全文