问答详情
源自:5-14 综合练习

大家帮忙看一下,我这算出来怎么是578.9996呢

#include <stdio.h>

void main()

{

    float distence=12,timeA=9,timeB=18,fare=0,sum=0,n;

 for(n=0;n<2;n++)

   { if (distence<=3)

    fare=14;

    else 

     if(timeA<=5||timeA>=23)

     fare=(distence-3)*2.3*1.2+14;  

    else

    fare=(distence-3)*2.3*+14;  

    sum+=fare;

    timeA=timeB;

    }

  }

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

}


提问者:慕雪9337533 2018-07-18 09:46

个回答

  • 慕九州8237304
    2018-07-31 23:39:24

    还在学习吗?第十二行,2.3后面多了个*

  • pray1512389272
    2018-07-18 14:03:47

    把一个双精度浮点数赋值给一个float型变量(fare)会丢失精度, 所以编译器会给出警告。
    不想看到警告的话,可以把变量改为double型