【if...else】身高预测

每个做父母的都关心自己孩子成人后的身高,据有关生理卫生知识与数理统计分析表明,影响小孩成人后的身高的因素包括遗传、饮食习惯与体育锻炼等。小孩成人后的身高与其父母的身高和自身的性别密切相关。
设faHeight为其父身高,moHeight为其母身高,身高预测公式为
男性成人时身高=(faHeight + moHeight)×0.54
   女性成人时身高=(faHeight×0.923 + moHeight)/2
此外,如果喜爱体育锻炼,那么可增加身高2%;如果有良好的卫生饮食习惯,那么可增加身高1.5%。

编程从键盘输入用户的性别(用字符型变量sex存储,输入字符F表示女性,输入字符M表示男性)、父母身高(用double类型存储,faHeight为其父身高,moHeight为其母身高)、是否喜爱体育锻炼(用字符型变量sports存储,输入字符Y表示喜爱,输入字符N表示不喜爱)、是否有良好的饮食习惯等条件(用字符型变量diet存储,输入字符Y表示良好,输入字符N表示不好),利用给定公式和身高预测方法对身高进行预测。

输入要求

输入用户的性别(用字符型变量sex存储,输入字符F表示女性,输入字符M表示男性)、父母身高(用实型变量存储,faHeight为其父身高,moHeight为其母身高)、是否喜爱体育锻炼(用字符型变量sports存储,输入字符Y表示喜爱,输入字符N表示不喜爱)、是否有良好的饮食习惯等条件(用字符型变量diet存储,输入字符Y表示良好,输入字符N表示不好)

输出要求

保留小数点后2位

测试数据

输入示例

F 1.78 1.56 Y Y
M 1.56 1.78 Y Y
F 1.67 1.98 N N

输出示例

1.66
1.87
1.76

小贴士

(无)

 1 #include<stdio.h>
 2 int main(){
 3       double fh,mh, h; /*fh:父亲身高;fm:母亲身高;*/ 
 4     char sex, sport, diet;
 5     scanf("%c %lf %lf %c %c", &sex, &fh, &mh, &sport, &diet); /*从键盘上读取输入*/
 6     if(sex == 'M')           
 7         h = (fh + mh) * 0.54;
 8     else 
 9         h = (fh * 0.923 + mh) / 2.0;
10         
11     if(sport == 'Y' ) 
12         h = h*1.02;   
13     
14     if(diet == 'Y' ) 
15         h =h*1.015;
16         
17     printf("%.2lf\n", h);
18       return 0;
19 }

 

posted @ 2017-09-22 18:49  听说这是最长的名字了  阅读(1417)  评论(0编辑  收藏  举报