题目描述
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表示女性),计算用户维持相应的体重所需要消耗的巧克力数。
【输入用例1】180 60 20 M
【输出用例1】您需要消耗7.25块巧克力。
【输入用例2】170 50 60 M
【输出用例2】您需要消耗5.24块巧克力。
【输入用例3】160 50 23 F
【输出用例3】您需要消耗5.71块巧克力。
分析
题目比较简单,输入的都是整数,性别也只有M F两种,所以输入定义int和char就行
简单判断分成两个公式输出即可
代码
//需要引入的文件
#include "stdio.h"
//如解答错误,注意检查错误信息提示,对比预期输出和实际输出之间的差异
int main() {
// your code
int weight,height,age;
char sex;
scanf("%d %d %d %c",&height,&weight,&age,&sex);
if(sex == 'F')
{
printf("您需要消耗%.2f块巧克力。",(655+(4.3*weight*2.2)+(4.7*height*0.39)-(4.7*age))/230.0);
}
else
{
printf("您需要消耗%.2f块巧克力。",(66+(6.3*weight*2.2)+(12.9*height*0.39)-(6.8*age))/230.0);
}
}