【发布时间】:2012-06-21 10:43:24
【问题描述】:
在下面的代码示例中,结果应该是 130.0,但是一旦编译,我得到 129.0。右侧是否没有产生足够的精度来获得准确的结果?有没有办法解决这个问题?
#include<stdio.h>
int main(void) {
double sum = ((117+130)/3) + ((130+13)/3);
printf("sum: %f\n", sum);
}
【问题讨论】:
标签: c double precision rounding