求大神我最后的结果69.400002的最后那个2是怎么来的?以及如果我把fare函数的类型改为int为何fare就是0了,我记得当时说返回值和声明的变量类型有冲突以返回值为准啊?
#include <stdio.h>
float fare(int m,int t,char apm)
{
float money;
if(m<=3)
{
money=13;
}
else
{
money=13+2.3*(m-3);
}
if((t>=11&&apm=='p')||(t<5&&apm=='a'))
{
money=money+0.2*2.3*(m-3);
}
return money+1;
}
int main()
{
printf("%f",fare(12,9,'a')+fare(12,6,'p'));
return 0;
}