总是不能算出结果
定义的sum的数据类型错误,然后最后的printf里应该是sumc,我算的这个 答案是69.4
#include <stdio.h>
double getTaxiPrice(int hours,int distance)
{
double totalPrice = 0.0; //定义打车费用
double perPrice = 2.3; //定义每公里单价计费
int startPrice = 13; //定义起步价
if(hours<0 || hours>24){
printf("请填写正确的时间\n");
return 0;
}
else if(!(hours>=5 && hours<23)) //判断打车时间是否要增加费用
{
perPrice *= 1.2; //费用增加20%
}
if(distance >3) //判断公里数
{
totalPrice = startPrice +(distance - 3)*perPrice; //计算价钱
}
else
{
totalPrice = startPrice;
}
totalPrice++; //加一块钱的燃油费
return totalPrice;
}
int main()
{
int moring = 9; //定义上午打车时间
int afternoon = 18; //定义下午打车时间
int distance = 12; //定义打车公里数
double totalPrice = 0; //定义总费用
if(getTaxiPrice(moring,distance) != 0)
{
totalPrice = getTaxiPrice(moring,distance); //调用计算费用的函数
}
if(totalPrice != 0)
{
totalPrice += getTaxiPrice(afternoon,distance); //调用计算费用的函数
}
printf("小明每天打车的总费用是:%.2f\n",totalPrice); //输出
return 0;
}
这个好理解一点
#include <stdio.h>
double pri(int mile,int times)
{
double sum;
if(mile<=3)
sum=13+ 1;
else
sum=2.3*(mile- 3)+ 14;
if(times>=23||times<=5)
sum=2.3*1.2*(mile-3)+14;
return sum;
}
int main()
{
double suma=pri(12,9);
double sumb=pri(12,18);
double sumc=suma+sumb;
printf("小明每天打车的总费用为%lf\n",sumc);
return 0;
}