别人回答我N遍都不明白的C语言常见问题
来源:百度知道 编辑:UC知道 时间:2024/06/23 00:36:09
main()
{ float s=153.9; /* s=1.9却正常输出1.900000,困惑! */
printf("%f",s);
getch();
}
为什么输出153.899994而不是153.900000,153.9没有超过数值范围和有效位数啊.连153.9这样的浮点数都不精确,浮点型数据存在这么大的误差,还能用?
{ float s=153.9; /* s=1.9却正常输出1.900000,困惑! */
printf("%f",s);
getch();
}
为什么输出153.899994而不是153.900000,153.9没有超过数值范围和有效位数啊.连153.9这样的浮点数都不精确,浮点型数据存在这么大的误差,还能用?
这就是火箭发射会失败的原因
你是用的16位编译器还是32位编译器啊
fortran的精度就好多了,哈哈。
用Double类型好些.
其实误差也不大
0.000006/153.9比较小啦.
问了第3遍了,不明白就hi我吧