21xrx.com
2024-09-20 05:44:22 Friday
登录
文章检索 我的文章 写文章
C++中如何保留两位小数
2023-06-22 13:10:09 深夜i     --     --
格式化输出 std::setprecision std::fixed std::ios::fixed std::ios::showpoint

在C++中,保留小数位数是非常常见的操作。而在需要保留小数时,保留两位小数是比较常见的要求。那么C++中如何保留两位小数呢?

一种方法是使用C++内置的iomanip库。该库可以设置流的输出格式。下面的代码演示了如何使用该库来保留两位小数:


#include <iomanip>

#include <iostream>

int main() {

  double a = 3.1415926536;

  std::cout << std::fixed << std::setprecision(2) << a << std::endl;

  return 0;

}

在上述代码中,使用std::fixed指定输出定点表示法。接着,使用std::setprecision(2)指定输出小数点后两位。最后,输出double类型变量a的值即可。

另一种方法是使用sprintf()函数。该函数可以将格式化的输出存储在一个字符串中。然后可以使用std::cout输出该字符串。代码如下:


#include <cstdio>

#include <iostream>

int main() {

  double a = 3.1415926536;

  char buf[32];

  std::sprintf(buf, "%.2f", a);

  std::cout << buf << std::endl;

  return 0;

}

在上述代码中,使用sprintf()将double类型变量a格式化为两位小数,并将结果存储在字符串buf中。然后使用std::cout输出该字符串。

总之,以上两种方法都可以用来保留小数点后两位。在实际使用中,根据具体情况选择合适的方法即可。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复