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表示女性),计算用户维持相应的体重所需要消耗的巧克力数。 输入说明: 身高 体重 年龄 性别 输入说明: 相应的体重所需要消耗的巧克力数 输入示例: 180 60 20 M 输出示例: 您需要消耗7.25块巧克力。
时间: 2024-02-18 22:04:18 浏览: 39
下面是代码示例:
```c
#include <stdio.h>
int main() {
float height, weight, age, bmr, chocolate;
char gender;
printf("请输入身高(cm):");
scanf("%f", &height);
printf("请输入体重(kg):");
scanf("%f", &weight);
printf("请输入年龄:");
scanf("%f", &age);
printf("请输入性别(M/F):");
scanf(" %c", &gender);
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("性别输入有误!\n");
return 0;
}
chocolate = bmr / 230;
printf("您需要消耗%.2f块巧克力。\n", chocolate);
return 0;
}
```
程序使用scanf函数依次读入身高、体重、年龄、性别等信息,并根据不同的性别使用Harris-Benedict等式计算BMR值。然后计算需要消耗的巧克力数,即BMR值除以230。最后使用printf函数输出结果。注意,需要保留两位小数,可以使用%.2f格式化输出。