【发布时间】:2014-05-29 01:23:45
【问题描述】:
在我当前的程序中,我遇到了一个问题,当我将一个数字除以一个更大的数字时,我只会得到 0。例如,如果我将 -272 除以 400,我会得到 0。
y=x/400;
printf("%f\n", y);
这是唯一导致问题的代码。 x 为 1-500 的负整数,y 初始化为浮点数。
我哪里错了?
【问题讨论】:
-
请出示x和y的声明
-
您需要将
x转换为float或除以400.0 -
如果我有一个硬币用于预期作为浮点数工作的每个 int 算术运算......
-
@ChrisO 谢谢,问题已解决。
-
我涵盖了您的问题以及您可能应该在此处了解的更多情况:devproconnections.com/development/… -- 这篇文章是关于 C#,但也适用于 C 和许多其他语言。
标签: c floating-point int printf type-conversion