宫宸 发表于 2021-11-16 23:00:48

C语言大一新生求助

1.小孩身高预测公式为:

男性成人时身高=(faHeight+moHeight)*0.54(cm)

    女性成人时身高=(faHeight*0.923+moHeight)/2(cm)

此外,若喜爱体育运动,则可增加身高2%;若有良好的饮食习惯,则可增加身高1.5%。

请编程从键盘输入小孩的性别、父母身高、是否喜爱体育锻炼、是否有良好的饮食习惯,利用给定公式和身高测量方法对审改进行预测。
代码如下:
#include<stdio.h>
int main()
{
   
        float fh,mh,me;
        int q1,q2,q3;
        printf("请输入你的性别(1 or 0)");
        scanf("%d",&q1);
        printf("请输入父母身高");
        scanf("%d%d",&fh,&mh);
        if(q1==1)
        me=(fh+mh)*0.54;
        else
        me=(fh*0.923+mh)/2;
        printf("是否喜爱体育锻炼?(1 or 0)");
        scanf("%d",&q2);
        if(q2==1)
        me=me*0.2;
        printf("是否有良好的饮食习惯?(1 or 0)");
        scanf("%d",&q3);
        if(q3==1)
        me=me*0.15;
       
        printf("你的预测身高为%3.2f",me);
       
        return 0;
}
运行结果是0.00,不是正确数据,改错加改进,感谢

lei1996 发表于 2021-11-16 23:24:46

scanf("%d%d",&fh,&mh);
改成scanf("%f%f", &fh, &mh);
此外,若喜爱体育运动,则可增加身高2%;若有良好的饮食习惯,则可增加身高1.5%
是不是表示me=me*0.2;应该改成me = me * 1.02
me=me*0.15;应该改成me = me * 1.015

人造人 发表于 2021-11-16 23:27:37

me=me*0.2;
0.2 是百分之几?

me=me*0.15;
0.15 是百分之几?

宫宸 发表于 2021-11-17 12:55:09

人造人 发表于 2021-11-16 23:27
me=me*0.2;
0.2 是百分之几?



悟了
页: [1]
查看完整版本: C语言大一新生求助