总是不能算出结果
定义的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;
}