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

求问大神结果为何是0??是哪里出错了?

#include <stdio.h>

int s;

int getampay()

{

    int am;

    float ampay;

    if(s<=3)

    {

        ampay=13;

    }

    else

    {

        if(am>=5&&am<23)

        ampay=13+2.3*(s-3);

        else

        ampay=13+2.3*1.2*(s-3);

        return ampay;

    }

}

int getpmpay()

{

    int pm;

    float pmpay;

    if(s<=3)

    {

        pmpay=13;

    }

    else

    {

        if(pm>=5&&pm<23)

        pmpay=13+2.3*(s-3);

        else

        pmpay=13+2.3*1.2*(s-3);

        return pmpay;

    }

}


int main()

{

    int am=9;

    int pm=18;

    int s=12;

    float pay;

    pay=getampay()+getpmpay();

    printf("小明上午上班时间为%d点,下午上班时间为%d点,公司和家的距离为%d公里\n",am,pm,s);

    printf("所以小明每天打车的总费用为%f元",pay);

    return 0;

}


提问者:慕设计9160145 2019-08-07 15:45

个回答

  • 小小疾飞
    2019-08-07 15:49:35
    已采纳

    两个定义的函数的返回类型都应该是float 其次你函数里的算法写错了。