北京哪个物美超市电器:c语言输出函数
来源:百度文库 编辑:高校问答 时间:2024/04/29 12:36:42
main()
{
float b=123.12345678;
printf("b=%f,\n",b);
/*我认为应该是123.123457,可结果是123.123459*/
/*这是为什么?*/
}
{
float b=123.12345678;
printf("b=%f,\n",b);
/*我认为应该是123.123457,可结果是123.123459*/
/*这是为什么?*/
}
结果是123.123459 这个数字好象是随机的 啊
float的精度问题!改成楼上的也是那个样子!
数据是以二进制存取!小数的二进制受存储位数限制,精确度很低,123.12345678到123。123459都是显示这个结果!你用,你用double型会正常显示
float只有前8位是有效的
%10.6f,格式改成这样