关于一个白丝不得其解的问题!

看了视频学习后自己动手尝试

代码为:

img

原本的结果应该是:61.017
但是编译运行后结果为:

img

后面为什么会多“006”呢?

你可以去查阅下float的编码方式,它并不能精确的表示出一些看起来很一般不精密的小数

因为你的数是float类型,计算结果有精度损失

原本的程序是啥,估计控制精度了吧.没控制的话6位小数没问题啊