如何在没有iomanip的情况下在没有头文件的情况下设置精度

Fre*_*eez -1 c++ codeblocks

当我打印的值时max1,会得到四舍五入的输出。

使用setprecision确实可以解决我的问题,但我想解决此问题而不使用诸如的其他头文件iomanip

int main()
{
    long long int n, l;

    cin >> n >> l;
    long long int a[n];

    for(int i = 0; i < n; i++)
         cin >> a[i];

    sort(a, a + n);

    double max1 = 0;
    max1 = 2*mmax(a[0] - 0, l - a[n - 1]);
    for(int i = 0; i < n - 1; i++)
     {
          max1 = mmax(max1,(a[i + 1] - a[i]));
     }
    cout << max1/2.0;
    //cout << fixed << setprecision(6) << max1/2.0;
}
Run Code Online (Sandbox Code Playgroud)

我收到了四舍五入的输出。

eer*_*ika 5

您可以std::coutstd::setprecision使用成员函数来设置的精度:

 std::cout.precision(42);
Run Code Online (Sandbox Code Playgroud)