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

请问我的计算结果为什么是138.00000而不是138.80000

#include <stdio.h>

int main()

{

    float spend;

    spend=cost(12, 9 ,18);

    printf("%f",spend);

    return 0;

}

float cost(int x ,int y1, int y2)

{

    float sum=0.0;

    if(x<=3)

    {

        sum=(13+1)*4;

    }

    else if((y1>=23||y1<5)&(y2>=23||y2<5))

    {

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

    }

    else if((y2>=23||y2<5)&(y1>=23||y1<5))

    {

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

    }

     else if((y1>=23||y1<5)&(y2>=23||y2<5))

    {

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

    }

    else

    {

        sum=(14+(x-3)*2.3)*4;

    }

    return sum;

}


正在回答

1 回答

前面的int导致取整数,float使保留小数

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

请问我的计算结果为什么是138.00000而不是138.80000

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