请教这段程序的输出结果是什么,为什么

请问这段程序的输出结果是什么,为什么
请问这段程序的输出结果是什么,为什么 
double pi=3.141592;
  cout<<setprecision(1)<<pi;


------解决方案--------------------
应该输出3.1,因为setprecision(1)表示精确到小数点后一位。
------解决方案--------------------
setprecision函数是干什么的?
------解决方案--------------------
都是基础知识,没什么技巧。。。
http://zhidao.baidu.com/question/31863763.html
------解决方案--------------------
setprecision(n) ,在用浮点表示的输出中,(n)表示有效位数
运行结果为: 3.