注册 登录
编程论坛 C++教室

有关精度的初级问题.

blueness21 发布于 2007-07-28 19:18, 529 次点击
#include <iostream>
using namespace std;
void main()
{
float x=1233.76898;
cout<<x<<endl;
cout.precision(4);//设置输出精度
cout.width(10);//设置输出宽度
cout<<x<<endl;
}
运行结果:1233.77
1234
其中,1234之前有6个空格。
--------------------------------------------
摘自<程序员教程>第二版 清华大学出版.
--------------------------------------------
我的问题是:1.为什么第一个结果是1233.77,是默认的2位小数吗?
2.第2个结果为什么是上面那样,我以为是 1233.7690,前面空一格,我的理解是精度是4,所以4位小数,宽度
是10,所以一共10位.
我想是我理解错了,恳请帮助.
2 回复
#2
leeco2007-07-28 21:25
你把cout.precision(4);改成cout.precision(3);cout.precision(2);cout.precision(5);看看效果不就理解了
#3
blueness212007-07-29 09:44

恩!理解了,感谢!~

1