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

求大神看看这是出了什么问题?它显示说miles没有声明

#include <stdio.h>
float taxifee(int time,int miles)
{
    float money;
    if(miles<=3)
    {
        money=14;
        printf("taxifee=14\n");
    }
    else
    {
        if(time>=23||time<=5)
        {
            money==14+2.3*(miles-3)*1.2;
            printf("midnight taxifee=%lf\n",money);
        }
        else
        {
            money==14+2.3*(milse-3);
            printf("taxifee=%lf\n",money);
        }
    }
    return money;
}
int main()
{
    printf("taxifee=%lf\n",taxifee(9,12)+taxifee(18,12));
    return 0;
}

提问者:慕九州3323890 2019-03-26 22:14

个回答

  • 慕容3376081
    2019-03-28 17:38:07

    你没看到“money==14+2.3*(milse-3);",你这个语句写的就有问题。这是判断语句,不是赋值语句。

    你前面写的都是判断语句,所以你输出的就是全局变量,你没给全局变量赋值,所以默认初始化为0。

    而你用%f做占位符输出就是 0.0000。

  • 慕容3376081
    2019-03-27 13:41:37

    float taxifee(int time,int miles)

    money==14+2.3*(milse-3);

    你把变量名打错了