是哪里算法有错误吗?计算出来结果为68,应该是69.4吧?

来源:5-14 综合练习

Mr邵7402958

2020-06-12 17:49

#include <stdio.h>

int fn(int k)  //自定义一个函数,k为时间段

{

int i=13;  //定义i=起步价

int j=12;   //定义j=里程

double m1,m2;

double m;

m=m1+m2;

if(k<=23&&k>5)

{

m=i+2.3*(j-3)+1;

}

else

{

m=i+2.3*(j-3)*1.2+1;

}

return m;

}

int main()

{

double m1=fn(9);

double m2=fn(6);

double m=m1+m2;

printf("打车总费用是%0.2f元\n",m);

return 0;

}


写回答 关注

2回答

  • weixin_慕姐5388646
    2020-06-29 17:02:35
    已采纳

    你的函数返回值是int, 所以计算出的m会被强制舍去小数位。

  • 奇怪的程序猿
    2020-11-24 19:25:05

    为什么我的是34.7.。。

C语言入门

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

926207 学习 · 20797 问题

查看课程

相似问题