21xrx.com
2024-09-20 06:04:52 Friday
登录
文章检索 我的文章 写文章
C++ 如何保留小数位数?
2023-07-10 07:16:04 深夜i     --     --
C++ 小数 保留位数

在 C++ 编程中,有时需要对浮点数保留指定位数的小数。这种情况下,需要使用 C++ iomanip 头文件中的 setprecision() 函数。

setprecision() 函数有一个参数,用于指定要保留的小数位数。该函数返回一个流对象,我们可以将其与输出操作符 << 一起使用。例如:


#include <iostream>

#include <iomanip>

int main() {

  double num = 3.14159;

  std::cout << std::setprecision(2) << num << std::endl;

  return 0;

}

上面的代码可以将 num 变量保留两位小数输出。运行结果为:


3.14

需要注意的是,setprecision() 函数只会影响下一次输出操作,而不是整个程序的输出。如果想在整个程序中保留小数位数,需要在每次输出操作时都使用 setprecision() 函数。

另外,如果希望输出数字时保留所有的有效数字(不截断小数位数),可以使用 std::fixed 和 std::scientific 修饰符。

例如:


#include <iostream>

#include <iomanip>

int main() {

  double num = 3.14159;

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

  std::cout << std::scientific << std::setprecision(2) << num << std::endl;

  return 0;

}

上面的代码将输出结果分别改为保留两位小数的定点表示法和保留两位小数的科学计数法。

总之,C++ 中可以使用 setprecision() 函数对浮点数保留指定位数小数,使得输出结果更加精确。

  
  

评论区

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