📅  最后修改于: 2023-12-03 15:07:37.903000             🧑  作者: Mango
在 C++ 中,常常需要对数值进行精确的计算,这时候可以通过设置精度来控制数值的输出,本文将介绍在 C++ 中设置精度的方法。
setprecision 函数可以设置输出流的精度,其函数原型如下所示:
#include <iostream>
#include <iomanip>
using namespace std;
ostream& setprecision (streamsize n);
其中,n 是要设置的精度。使用 setprecision 函数时,需要注意以下几点:
下面是一个使用 setprecision 函数输出浮点数的例子:
double a = 1.23456789;
cout << setprecision(4) << a << endl; // 输出 1.235
cout << setprecision(6) << a << endl; // 输出 1.23457
除了使用 setprecision 函数外,还可以使用 cout.precision 函数来设置精度。cout.precision 函数的作用是设置流对象的精度,并返回之前的精度设置。其函数原型如下所示:
#include <iostream>
using namespace std;
streamsize precision() const;
streamsize precision (streamsize prec);
其中,precision 函数没有参数时返回当前流的精度,有参数时设置新的流精度,并返回之前的精度设置。
下面是一个使用 cout.precision 函数输出浮点数的例子:
double a = 1.23456789;
cout.precision(4);
cout << a << endl; // 输出 1.235
cout.precision(6);
cout << a << endl; // 输出 1.23457
除了设置精度外,还可以使用 fixed 和 scientific 控制输出格式。fixed 控制输出格式为固定小数位,scientific 控制输出格式为科学计数法。使用这两个控制符时需要包含头文件
下面是一个使用 fixed 和 scientific 控制输出格式的例子:
double a = 123456789.0;
// 输出格式为固定小数位
cout << fixed << setprecision(2) << a << endl; // 输出 123456789.00
// 输出格式为科学计数法
cout << scientific << setprecision(2) << a << endl; // 输出 1.23e+08
本文介绍了在 C++ 中设置精度的三种方法,分别是使用 setprecision 函数、cout.precision 函数以及固定小数位和科学计数法输出格式。通过控制精度和输出格式,可以实现对数值计算结果的精确控制。