//顺序不对
#include<stdioh>
int main()
{
char sex,sports,diet;
float faheight,moheight,height;
printf("faheight="); //输入的单位以公斤计算
scanf("%f", &faheight); //输入的单位以公斤计算
printf("moheight=");
scanf("%f", &moheight);
printf("Male or FamalePlease input 'M' or 'F':");
scanf("%1s", &sex);
switch(sex)
{
case'F':height=(faheight+moheight)054;break;
case'M':height=(faheight0923+moheight)/2;break;
}
printf("Do you like sportsplease input'Y' or 'N':");
scanf("%1s", &sports);
switch(sports)
{
case'Y':height=height(102);break;
case'N':height=height;break;
}
printf("Do you have good diet and habitsplease input'Y' or 'N':");
scanf("%1s", &diet);
//分析判断预测
switch(diet)
{
case'Y':height=height(1015);break;
case'N':height=height;break;
}
printf("\nmy height is:%3f",height);
return 0;
}
照着这个公式写应该没有问题吧?
这个公式能大概预测一下:
欧洲科学家的预测子女身高公式如下:
儿子成年身高(cm)=(父亲身高+母亲身高)×108/2
女儿成年身高(cm)=(父亲身高×0923+母亲身高)/2
我国的身高预测公式,比用国外的公式预测误差小。
身高预测公式如下:(单位:厘米)
男孩身高=59699+0419×父亲身高+0265×母亲身高
女孩身高=43089+0306×父亲身高+0431×母亲身高
#include<stdioh>
int main()
{
float faheight,moheight,a;
char sex,sport,habit;
printf("Please input: Father's height(space)Mother's height(cm)\n");
scanf("%f %f",&faheight,&moheight);//%f
{
getchar();//接收'\n'
printf("IF THE BABY IS A BOY(y or n)\n");
sex=getchar();
if(sex=='y')
a=(faheight+moheight)10054;
if(sex=='n')
a=(faheight0923+moheight)/2;
getchar();
}
{
printf("DOES HE/SHE LIKE SPORTS(y or n)\n");
sport=getchar();
if(sport=='y')
a=a102;
if(sport=='n')
a=a10;
getchar();
}
{
printf("DOES HE/SHE HAVE GOOD HABITS(y or n)\n");
habit=getchar();
if(habit=='y')
a=a1015;
if(habit=='n')
a=a;
getchar();
}
printf("Height=%2f cm",a);
return 0;
}
这是一个C语言的问题,需要从键盘输入小孩的性别、父母身高、是否喜爱体育锻炼、是否有良好的饮食习惯等条件,然后利用给定公式和身高预测方法对小孩的身高进行预测。根据题目描述,可以使用以下代码实现:
#include <stdioh>
int main() {
float faHeight, moHeight, Height;
char sex, sports, diet;
printf("父亲的身高:");
scanf("%f", &faHeight);
printf("母亲的身高:");
scanf("%f", &moHeight);
printf("小孩的性别:");
scanf(" %c", &sex);
if (sex == 'F') {
Height = (faHeight 0923 + moHeight) / 2;
} else if (sex == 'M') {
Height = (faHeight + moHeight) 054;
} else {
printf("Warning");
return 0;
}
printf("是否喜欢体育锻炼:");
scanf(" %c", &sports);
if (sports == 'Y') {
Height = 102;
}
printf("是否有良好的饮食习惯:");
scanf(" %c", &diet);
if (diet == 'Y') {
Height = 1015;
}
printf("小孩的身高预测为:%2fcm\n", Height);
return 0;
}
注意,scanf函数在读取字符时需要在格式字符串前加一个空格,以消耗掉输入缓冲区中的换行符。
只要公式没错,这个程序就是对的了,scanf("%1f",&b);输入的时候其实可以直接scanf("%f",&b);这样更好些。推荐用double比float要准些。
以上就是关于C语言程序设计,身高的计算。请各位帮忙看看我的程序,多谢了!全部的内容,包括:C语言程序设计,身高的计算。请各位帮忙看看我的程序,多谢了!、怎么用C语言编程实现身高预测、C语言 已知父母身高预测孩子身高程序 求帮找错等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)