为了账号安全,请及时绑定邮箱和手机立即绑定

为什么错了

#include <stdio.h>
float taxifee(int time,int miles)
{
    float fee
    if (miles<=3)
    {
        taxifee=14;
        printf("费用为14\n");
    }
    else
    {
        if (time>=23||time<5)
        {
            fee=1+13+2.3*(miles-3)*1.2;
        }
        else
        {
            fee=1+13+2.3*(miles-3);
        }
    }
    return taxifee;
}
int main()
{
    printf("费用为%.1f\n",taxifee(9,12)+taxifee(18.12));
    return 0;
}

正在回答

2 回答


2:你的自定义函数最后的 return taxifee;  c语言是识别的,它不知道taxifee是什么意思,你应该改成 return fee;(如果你的if每个分支后都加了 return fee;那么最后的那个 return fee;也可以删掉不要)

#include <stdio.h>

float fn(float k , int t )

    {

        float sum;

        if(k<=3)

        {

            sum=13+1;

        }

        else

        {

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

            {

                sum=14+(k-3)*2.3;

            }

            else

            {

                sum=14+(k-3)*2.3*1.2;

            }

        }

        return sum;

    }

int main()

{

    float SUM = fn(12,9)+fn(12,18);

    printf("小明每天打车的总费用为%f元\n",SUM);

    return 0;

}


1 回复 有任何疑惑可以回复我~
#1

世纪__ 提问者

非常感谢!谢谢
2016-02-02 回复 有任何疑惑可以回复我~
#2

世纪__ 提问者

我不是开始是定义的了taxifee这个变量了吗,return返回值不可以是taxifee吗
2016-02-02 回复 有任何疑惑可以回复我~

float fee后面没有加分号

1 回复 有任何疑惑可以回复我~
#1

世纪__ 提问者

谢谢~
2016-02-02 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       926219    人
  • 解答问题       20797    个

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

进入课程

为什么错了

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信