为啥运行结果是69.399994

来源:5-14 综合练习

九穗禾

2018-08-13 21:36

#include <stdio.h>

float A(int t)

{

    float a=2.3;

    float m;

    int s = 12;

    if(s>3)

    {

        if(t>=23&&t<=24&&t>=0&&t<5)

        {

            m = 13+a*1.2*(s-3);

        }

        else

        {

            m = 13+a*(s-3);

        }

    }

    else

    {

        m = 13;

    }

    m += 1;

    return m;

}

int main()

{

    float M = A(18)+A(9);

    printf("小明每天打车的总费用为%1f",M);

    return 0;

}

是程序哪里有问题吗

写回答 关注

2回答

  • 河岸朱色
    2018-08-16 23:05:32
    已采纳

    控制位数是%n 

    n为数字 

    整数表示小数点前 原位数大于n时按原来输出 小于n时 前面加空格

    注:如果输入负数则在右边加空格

    小数表示小数点后的位数  


    n=356.789456

    %2.3f 会输出 356.789

    %4.1f 会输出 (空格)356.7

    河岸朱色 回复九穗禾

    #include <stdio.h> float M(int a) { float num; if(a>=23||a<5) { num=13+(12-3)*2.3*1.2+1;; } else { num=13+(12-3)*2.3+1; } return num; } int main() { float mun=M(9)+M(18); printf("%.2f\n",mun); } 你把你的和我的对比一下自己找一下哪里不明白来问我

    2018-08-17 19:26:10

    共 16 条回复 >

  • 修裾欲溯空
    2018-08-13 22:09:17

    你是不是少了个%f

    修裾欲溯空 回复九穗禾

    嗯,对了就采纳一下

    2018-08-17 16:30:37

    共 4 条回复 >

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926206 学习 · 20797 问题

查看课程

相似问题