如何cout一个带有n个小数位的浮点数

Muh*_*ima 25 c++ formatting cout

可能重复:
如何使用cout以完全精度打印double值?

float a = 175.;
   cout << a;
Run Code Online (Sandbox Code Playgroud)

如果我运行前面的代码我将只得到175,我怎么能用(例如)3个小数位来输出数字,即使它们是零...我怎么能打印"175.000"?

Jes*_*ood 49

你需要std::fixedstd::setprecision:

 std::cout << std::fixed << std::setprecision(3) << a;
Run Code Online (Sandbox Code Playgroud)

这些需要以下标题:

#include <iomanip>
Run Code Online (Sandbox Code Playgroud)

  • 啊,iostreams ......无缝地结合了龟的快速和Andrew LLoyd-Webber的美丽. (5认同)

小智 6

尝试setprecision

cout.setf(ios::fixed);
cout << setprecision(3) << a << endl;
Run Code Online (Sandbox Code Playgroud)