c语言题,求大佬帮助。
2个回答
展开全部
#include <stdio.h>
int main() {
double moHeight,faHeight,h,scale = 1;
char sex,sport,diet;
printf("父母的身高分别为:");
scanf("%lf%lf",&faHeight,&moHeight);
fflush(stdin);
printf("性别:");
scanf("%c",&sex);
fflush(stdin);
printf("喜爱运动吗:");
scanf("%c",&sport);
fflush(stdin);
if(sport == 'y' || sport == 'Y') scale *=1.02;
printf("有抽烟恶习吗:");
scanf("%c",&diet);
if(sport == 'n' || sport == 'N') scale *=1.015;
if(sex == 'm' || sex == 'M') h = (faHeight + moHeight)*0.54;
else h = (0.923*faHeight + moHeight)/2;
printf("孩子可能的身高为:%.2lfcm\n",scale*h);
return 0;
}
更多追问追答
追问
谢谢大神
算法出了一点小问题,1.02和1.015不能叠加
展开全部
#include<stdio.h>
int main()
{float height,faheight,moheight;
char sex,sports,diet;
printf("请输入性别(M/F):");
sex=getchar();
printf("请输入父母身高(cm):");
scanf("%f%f",&faheight,&moheight);
if(sex=='F')height=(faheight*0.923+moheight)/2;
else height=(faheight+moheight)*0.54;
printf("是否喜爱体育锻炼(Y/N):");
fflush(stdin);
sports=getchar();
if(sports=='Y')height=height*(1+0.02);
printf("是否有良好的饮食习惯(Y/N):");
fflush(stdin);
diet=getchar();
if(diet=='Y')height=faheight*(1+0.015);
printf("%.0f\n",height);
return 0;
}
int main()
{float height,faheight,moheight;
char sex,sports,diet;
printf("请输入性别(M/F):");
sex=getchar();
printf("请输入父母身高(cm):");
scanf("%f%f",&faheight,&moheight);
if(sex=='F')height=(faheight*0.923+moheight)/2;
else height=(faheight+moheight)*0.54;
printf("是否喜爱体育锻炼(Y/N):");
fflush(stdin);
sports=getchar();
if(sports=='Y')height=height*(1+0.02);
printf("是否有良好的饮食习惯(Y/N):");
fflush(stdin);
diet=getchar();
if(diet=='Y')height=faheight*(1+0.015);
printf("%.0f\n",height);
return 0;
}
追问
谢谢你的回答,谢谢。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |