gpt4 book ai didi

c - 四舍五入后打印 float

转载 作者:太空宇宙 更新时间:2023-11-04 08:56:35 26 4
gpt4 key购买 nike

我有一个舍入函数,

float myround(float x, int places)
{
float const shift = powf(10.0f, places);
x *= shift;
x = floorf(x + 0.5f);
x /= shift;

return x;
}

当我尝试将数字四舍五入到小数点后 4 位,然后打印数字时

printf("%f ", x); 

我得到的数字没有四舍五入。如果我打印它

printf("%.4f ", x);

我将数字四舍五入到 4 位。第一个 printf 是否应该不将数字打印到小数点后 4 位,因为我已经四舍五入了数字?

谢谢。

最佳答案

你不能舍入 float ,你只能将它们打印到特定的精度。所有 float 始终是“未四舍五入”的,尽管您显然可以更改该值以更接近四舍五入的数量。

关于c - 四舍五入后打印 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16659021/

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