学霸看看有什么问题?

来源:5-14 综合练习

奋球

2017-08-04 08:44

#include <stdio.h>

double price(int hours,int distance)

{

   double taxiprice=0.0;

   double start=13;

   double everydistance=2.3;

   if(hours<0||hours>24)

   {

       printf("请输入正确时间\n");

       return 0;

   }

   else if(hours>=5&&hours<23)

   {

       if(distance>3)

       {

           taxiprice=start+(distance-3)*everydistance;

       }

       else

       {

           taxiprice=start;

       }

   }

   else

   {

       if(distance>3)

       {

           taxiprice=start+(distance-3)*everydistance*1.2;

       }

       else

       {

           taxiprice=start;

       }

    taxiprice++;

    return taxiprice;   

   }

   int main()

   {

       int moring=9;

       int afternoon=18;

       int distance=12;

       double taxiprice=0.0;

       taxiprice=price(moring,distance)+price(afternoon,distance);

       printf("小明每天打车总费用:%f\n",taxiprice);

       return 0;

   }

}


写回答 关注

1回答

  • 慕粉4079424
    2017-08-04 17:59:19
    已采纳

    1. main函数结尾多了一个括号,price函数结尾少了一个括号,这导致这段代码编译时就出错。2. 应该在else if结束前加一个return taxiprice,或者在函数price结尾加return,源代码输出价格为0就是因为函数没有正确返回值。

    奋球

    非常感谢!

    2017-08-06 17:00:55

    共 1 条回复 >

C语言入门

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

926210 学习 · 20797 问题

查看课程

相似问题