问答详情
源自:5-14 综合练习

请问这代码哪里有错?

#include <stdio.h>
int Yue(int n,float mile,float time,float clock)
int main()
{float mile,time,clock;
static int n;
    printf("每天打车用的总费用为%d",Yue(n,mile,time,clock))
    n++;
    return 0;
}
int Yue(int n,int mile,int time,int clock)
{
float money;
if(mile<=3)
{
 money=13;
 else
 if(clock>=23&&clock<5)
 money=1.2*(mile-3)*2.3+13;
 else
 money=(mile-3)*2.3+13;
}
if(n!=0)
money+=n;
return money;
}



提问者:qq_LX_38 2017-01-31 23:04

个回答

  • qq_落叶清风_0
    2017-02-01 11:08:23
    已采纳

    首先,你的自定义函数要放在主函数前面,你前面的int Yue是什么?又没有执行代码块,下面又出现一个有执行代码块的,主函数要放在最后;还有就是你的自定义函数有问题,你的if(mile<=3){        }里面怎么用else if?你如果想用镶嵌型,你就不用else了,你如果是用多重条件型就把else if放在}后面吧第二个条件和执行代码块也放外面,并且给else if独立一个{   };还有你那个if(clock>=23&&clock<5)应该改为if(clock>=23||clock<5)吧,应为用与语句的话就不可能执行这个代码块了,那还要它干嘛?if,else if和else的执行代码块要用{  }括起来,还有,我有点看不懂你到底是什么算法?你的n是什么意义?time你也没用上啊!如果要执行的话,各参数你也要给它赋值啊!!!