21xrx.com
2025-03-18 09:31:52 Tuesday
文章检索 我的文章 写文章
C++ 如何保留小数位数?
2023-07-13 03:22:13 深夜i     18     0
C++ 小数 保留 位数

当编写C++程序进行数值计算时,保留小数位数经常是必需的。例如,在计算货币金额时必须精确到小数点后两位。对于这种情况,C++提供了几种方法来保留小数位数,下面将介绍其中的一些方法。

1. 标准输出流

使用std :: fixed 和std :: setprecision()函数可以在控制台打印结果并设置小数点后的精度。例如:

#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
  double number = 3.141592653589793;
  cout << fixed << setprecision(2) << number << endl;
  return 0;
}

输出将会是3.14。

2. String format

使用sprintf函数将小数转换为字符串并设置格式。例如:

#include <cstdio>
int main()
{
  double number = 3.141592653589793;
  char buffer[50];
  sprintf(buffer, "%.2f", number);
  printf("%s\n", buffer);
  return 0;
}

输出将会是3.14。

3. 将小数放入stringstream中

可以将小数放入stringstream对象中,并使用setprecision()来设置精度。例如:

#include <iostream>
#include <iomanip>
#include <sstream>
using namespace std;
int main()
{
  double number = 3.141592653589793;
  stringstream stream;
  stream << fixed << setprecision(2) << number;
  cout << stream.str() << endl;
  return 0;
}

输出将会是3.14。

总的来说,C++提供了多种方法来保留小数位数。选择使用哪一种取决于情景和方便性。

  
  

评论区

请求出错了