C++11 打印输出中小数点后的数字

C++11 打印输出中小数点后的数字,c++11,formatting,C++11,Formatting,我需要做以下的计算 sqrt(abs(pow(a, 2) - pow(b, 2))) sqrt(abs(pow(a, 2) + pow(b, 2))) 让a=4和b=5这样输出是3和6.40312。现在,如果我想像3.0那样打印,而另一个保持不变6.40312我该怎么做?如果我使用setprecision()和fixed的输出是3.0000和6.40312。如何使用cout获得可变长度小数点结果 还请注意,pow(a,2)是执行a*a的一种非常低效的方法。

我需要做以下的计算

sqrt(abs(pow(a, 2) - pow(b, 2)))
sqrt(abs(pow(a, 2) + pow(b, 2)))
a=4
b=5
这样输出是
3
6.40312
。现在,如果我想像
3.0
那样打印,而另一个保持不变
6.40312
我该怎么做?如果我使用
setprecision()
fixed
的输出是
3.0000
6.40312
。如何使用
cout
获得可变长度小数点结果

还请注意,
pow(a,2)
是执行
a*a
的一种非常低效的方法。