【发布时间】:2012-10-05 02:59:36
【问题描述】:
我正在尝试以 2 点精度打印数字 684.545007,因为在 684.54 之后数字被截断(不四舍五入)。
当我使用时
var = 684.545007;
printf("%.2f\n",var);
它输出684.55,但我想得到的是684.54。
有谁知道我该如何纠正这个问题?
【问题讨论】:
-
如果您期待的是
684.54,那么您期待的是错误的结果。就这么简单。 -
因为我不想要一个四舍五入的值。此代码是 Programming Online Judge 代码解决方案的一部分。
-
再次:舍入不像您显然想要的那样工作。 Select isn't broken.
-
@JackManey,当然不是。号码是 684.545 而不是 684.555。输出应该是 .54 而不是 .55
-
您似乎对“精度”的含义有错误的理解。