【发布时间】:2019-10-12 21:50:10
【问题描述】:
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
long double n;
cin>>n;
cout<<setprecision(4)<<fixed<<scientific<<n;
return 0;
}
例如:如果我在程序中输入 256 之类的内容,我会得到 2.5600e+002 作为输出。但我想打印 2.5600*(10^2)。我还希望能够控制得到多少位数显示在小数点后。
有人可以帮我吗?
【问题讨论】:
-
I want to print 2.5600*(10^2)然后实现一个这样打印它的函数。2.5600e+002输出是正确的。 E-notation 看起来像是科学计数法的有效表示法。请注意,fixed和scientific都以十六进制格式打印数字。 -
setprecision控制小数位数;正如@KamilCuk 所说,如果你想要不同的格式,你可以自己写。 -
我知道答案是正确的,但我想像教科书一样格式化。
-
@ScottHunter ..好的,我将使用 setprecision,但如何编写不同的格式?
标签: c++ formatting format scientific-notation