慕慕3416675
2018-07-20 00:09
#include <stdio.h>
float sum=0,univalent=2.3;
float price(int km,int Time)
{
float start=13;
if(km<=3)
{
sum=start+1;
}
else
{
if(5<=Time<23)
sum=start+1+(km-3)*univalent;
else
sum=start+1+(km-3)*univalent*1.2;
}
return sum;
}
int main()
{
float money;
int a=9,b=18,km=12;
money=price(km,a)+price(km,b);
printf("小明每天的打车费用:%f\n",money);
return 0;
}
输出结果为什么不是69.400000,而是69.399994,而且还发现一个问题,不是在5点与23点之间的时间,输出结果还是69.4,也就是说加收20%那步不起作用,求大牛指教,谢谢!
if(Time>=5&&Time<23)判断语句只能进行一次计算,所以要加&&与逻辑计算来实现
晚上23点(含)至次日凌晨5点(不含)打车,每公里单价计费加收20%。 这句是这样吗?if(5<=Time<23)
C语言入门
926022 学习 · 20793 问题
相似问题