求解答
请问为什么
#include <stdio.h>
main( )
{ float x=123.456002;
printf( "x=%f\n" , x );
}
这段程序输出的是:x=123.456001.
如果x被换成123.456,结果还是一样,为什么尾数是001,即x为什么不是输出123.456002或123.456000
求解答,谢谢!!
[解决办法]
精度问题吧,用double试试。
[解决办法]
十进制小数和二进制小数之间的转换不一定是精确的,有时有限小数会转换成无限循环小数,所以会带来一定的误差