%f的输出问题,感觉四舍五入不对?还是啥问题我忽略了?

部分代码:float b=123.1234567;printf("b=%f",b);为啥输出b=123.123459

精度不够

可能是浮点数精度问题,可以找几篇float、double精度的文章了解一下

float精度不够了,float自动把123.1234567舍入到123.123459

float只能保留到6位,可以把%f改为%lf