#include <stdio.h>
float sum(int n, int i)
{
float Sum;
if (0<=i<=3)
{
Sum=14;
}
else if (n>=23||n<5)
{
Sum=14+(i-3)*2.3*1.2;
}
else
{
Sum=14+(i-3)*2.3;
}
return Sum;
}
int main()
{
printf("price=%f rmb",sum(9,12)+sum(18,12));
return 0;
}
第五章5-14综合练习 早上九点 下午六点 12公里打车的价格总数
我怎么算出来一直是28...求大神看看代码哪儿错了
小修改了一下:
#include <stdio.h> double sum(int n, int i) { double Sum; if (i>=0&&i<=3) { Sum=14; } else if (n>=23&&n<5) { Sum=14+(i-3)*2.3*1.2; } else { Sum=14+(i-3)*2.3; } return Sum; } int main() { printf("price=%f rmb",sum(9,12)+sum(18,12)); return 0; }
输出结果为69.4元。
主要的错误是C语言中没有连续不等式的写法。把if里的判断条件改成x>=0 && x<=5试试。