21xrx.com
2025-03-27 03:56:01 Thursday
文章检索 我的文章 写文章
C++中的四舍五入保留一位小数操作
2023-07-05 08:24:51 深夜i     49     0
C++ round 保留小数 四舍五入

在C++中,处理浮点数时,通常需要进行四舍五入并保留指定位数的操作。这在数值计算和输出结果时很常见。下面介绍C++中的四舍五入保留一位小数的操作方法。

方法一:使用 库中的函数

C++的 库提供了许多数学函数,例如四舍五入函数round()。round()函数用于将一个浮点数四舍五入后转化成整数,然后再将其转化为浮点数。使用方法如下:

#include <iostream>
#include <cmath>
using namespace std;
int main()
{
  double num = 3.14159265358979323846;
  double rounded_num = round(num * 10) / 10.0;
  cout << "原数:" << num << endl;
  cout << "四舍五入后保留一位小数:" << rounded_num << endl;
  return 0;
}

运行结果:

原数:3.14159
四舍五入后保留一位小数:3.1

方法二:自行实现四舍五入函数

除了使用 库中的函数,我们也可以自行实现一个四舍五入函数。实现方法如下(其中round_num为要四舍五入的数,n为保留的小数位数):

double round(double round_num, int n)
{
  double mul = pow(10, n);
  double rounded_num = (round_num + 5 / mul) * mul;
  return static_cast<int>(rounded_num) / mul;
}

使用方法如下:

#include <iostream>
#include <cmath>
using namespace std;
double round(double round_num, int n)
{
  double mul = pow(10, n);
  double rounded_num = (round_num + 5 / mul) * mul;
  return static_cast<int>(rounded_num) / mul;
}
int main()
{
  double num = 3.14159265358979323846;
  double rounded_num = round(num, 1);
  cout << "原数:" << num << endl;
  cout << "四舍五入后保留一位小数:" << rounded_num << endl;
  return 0;
}

运行结果:

原数:3.14159
四舍五入后保留一位小数:3.1

综上所述,C++中进行四舍五入保留一位小数的操作非常简单,可以使用 库中的round()函数或自行实现四舍五入函数。在实际应用中,根据具体的需求选择相应的方法即可。

  
  

评论区