关于C++中的cout.precision

#include<iostream.h>voidmain(){doublenum=123.76898;cout.precision(4);cout<<num<<endl;... #include<iostream.h>
void main()
{
double num = 123.76898;
cout.precision(4);
cout << num<<endl;
}
这个输出是123.8

#include<iostream.h>
void main()
{
double num = 1234.76898;
cout.precision(4);
cout << num<<endl;
}
输出却是1235.
我知道precision是表示精度的,可是我就是不能理解这个输出的结果,希望高手指点一下。
展开
 我来答
qlj198954
2011-10-16 · TA获得超过127个赞
知道小有建树答主
回答量:148
采纳率:0%
帮助的人:132万
展开全部
这个精度就是从第一个非零值算起的。你那里是精度为4。就是取数据的前四位为有效数。你应该把这个精度值理解为从小数点后第一位算起了。所以理解不了输出结果。
b0189491
2011-10-16 · TA获得超过843个赞
知道小有建树答主
回答量:1976
采纳率:0%
帮助的人:1098万
展开全部
对于 浮点数,如果 小数部分 比 precision 设定的位数多,则在相应的 位置上 四舍五入。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
迈克尔赵乐乐
2011-10-30
知道答主
回答量:5
采纳率:0%
帮助的人:3.6万
展开全部
没有用fixed,表示的是输出有几位有效数字,并不是你小数点后有几位!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式