gpt4 book ai didi

c - 整数赋值中的舍入误差

转载 作者:太空宇宙 更新时间:2023-11-04 01:12:05 25 4
gpt4 key购买 nike

您如何解释此处发生的舍入?我认为将浮点值分配给 Int 总是会导致小数点后的值丢失?

int z=39.99999999999999999999999;
printf("%d",z); // gives 40

谢谢

最佳答案

你不可能有足够的 double 来容纳所有那些 9。

>>> '%.15f' % 39.9999999999999
'39.999999999999901'
>>> '%.15f' % 39.99999999999999
'39.999999999999993'
>>> '%.15f' % 39.999999999999999
'40.000000000000000'

关于c - 整数赋值中的舍入误差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10328805/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com