每个做父母的都关心自己孩子成人后的身高,据有关生理卫生知识与数理统计分析表明,影响小孩成人后身高的因素有遗传、饮食习惯与坚持体育锻炼等。小孩成人后身高与其父母身高和自身性别密切相关。
设faHeight为其父身高,moHeight为其母身高,身高预测公式为:
男性成人时身高 = (faHeight + moHeight) * 0.54(cm)
女性成人时身高 = (faHeight * 0.923 + moHeight) / 2(cm)
此外,如果喜爱体育锻炼,那么可增加身高2%,如果有良好的卫生饮食习惯,那么可增加身高1.5%。
编程从键盘输入小孩的性别(用字符型变量sex存储,输入字符F表示女性,输入字符M表示男性)、父母身高(用实型变量存储,faHeight为其父身高,moHeight为其母身高)、是否喜爱体育锻炼(用字符型变量sports存储,输入字符Y表示喜爱,输入字符N表示不喜爱)、是否有良好的饮食习惯等条件(用字符型变量diet存储,输入字符Y表示喜爱,输入字符N表示不喜爱),利用给定公式和身高预测方法对小孩的身高进行预测。
程序代码:
#include <stdio.h>
int main()
{
char sex,sports,diet;
float faHeight,moHeight,Height;
printf("请输入小孩性别:");
scanf("%c",&sex);
printf("请输入父亲身高:");
scanf("%f",&faHeight);
printf("请输入母亲身高:");
scanf("%f",&moHeight);
getchar();
printf("是否喜爱体育锻炼:");
scanf("%c",&sports);
getchar();
printf("是否有良好的饮食习惯:");
scanf("%c",&diet);
if(sex=='F'){
Height=(faHeight*0.923+moHeight)/2.0;
}else if(sex=='M')
{
Height=(faHeight+moHeight)*0.54;
}
if(sports=='Y'){
Height=Height*(1+0.02);
}
if(diet=='Y'){
Height=Height*(1+0.015);
}
printf("小孩成人后的身高预测为:%.3f",Height);
return 0;
}