我想将输出精度全局设置为2个小数位。
我已经尝试使用iomanip
和setprecision
,但是我总是得到包含'e'的输出。
这是我的示例代码:
#include <iostream>
#include <iomanip>
using namespace std;
int main ()
{
double pay=16.78;
double hours;
double total;
cout.precision(2);
cout << "Please enter how many hours you worked : " << endl;
cin >> hours;
total=hours*pay;
cout << "You earned: " << total << endl;
}
3条答案
按热度按时间bkhjykvo1#
您可以使用类似于以下内容的内容:
您需要包含iomanip才能使其正常工作。
3z6pesqy2#
我不熟悉“cout.precision(2)",如果我希望输出有4位有效数字,我会使用std::setprecision(4)。
w1jd8yoj3#
如果你的e是一个正值,你不能骑他们,因为你的值太大了。这个代码
如果它是一个负数,则精度不够。
一个简单的方法是使用std::fixed
但是std::fixed的缺点是它在最后一个非零数字之后显示零,直到它达到你之前设置的setprecision数量。