C 代码中需要帮助修复的边缘案例

C 代码中需要帮助修复的边缘案例,c,C,由于某些原因,我无法将代码格式化为代码,但它就在这里 我把它设置为英里数是/500+1,所以我得到500的多少倍,并用它来计算运输成本。测试用例包括: 1.5磅,200英里-1.5英里 5.61200-11.10 1.02500-7.50 8.512345-133.75 12.8345-“对不起…” 除了测试用例3,所有的代码都可以工作,测试用例3的结果是9.00而不是预期的7.50,我需要帮助找出如何让它工作 就像我出于某种原因说的,stackover flow不允许我发布代码 我不确定我是否

由于某些原因,我无法将代码格式化为代码,但它就在这里

我把它设置为英里数是/500+1,所以我得到500的多少倍,并用它来计算运输成本。测试用例包括:

1.5磅,200英里-1.5英里

5.61200-11.10

1.02500-7.50

8.512345-133.75

12.8345-“对不起…”

除了测试用例3,所有的代码都可以工作,测试用例3的结果是9.00而不是预期的7.50,我需要帮助找出如何让它工作

就像我出于某种原因说的,stackover flow不允许我发布代码


我不确定我是否理解您的问题,但我认为您面临的主要问题是,您正在试图找出500的倍数是多少,处理所有特殊情况的更简单方法如下所示

#include <math.h>
int main(){
    // ...
    int ship = ceil(miles / 500.0); // note 500.0 to cast the operation to double
    // ...
}
#包括
int main(){
// ...
int ship=ceil(miles/500.0);//注意500.0将操作转换为double
// ...
}

因此,如果英里数可以被500整除,那么它将产生一个整数,而不必加1,否则它将产生一个浮点数,该浮点数将四舍五入到更高的整数。

包含代码的问题。给出了不能包含它的原因是什么?更正了代码图像的链接。更正了英语语法。