在 C++ 中,你可以使用 std::setprecision
来控制浮点数的精度,使用 std::scientific
来控制科学计数法。
以下是一个示例代码:
#include <iostream>
#include <iomanip>
#include <format>
int main() {
double d = 1.23456789;
// 使用 std::setprecision 控制精度
std::cout << std::setprecision(2)<< d << std::endl; // 输出 1.23
// 使用 std::scientific 控制科学计数法
std::cout << std::scientific << std::setprecision(2)<< d << std::endl; // 输出 1.23e+01
// 使用 C++20 的 std::format 控制格式
std::string formatted = std::format("{:.2e}", d);
std::cout << formatted << std::endl; // 输出 1.23e+01
return 0;
}
在上面的示例中,我们首先使用 std::setprecision
来设置浮点数的精度为 2 位小数。然后,我们使用 std::scientific
来控制科学计数法,同样设置精度为 2 位小数。最后,我们使用 C++20 的 std::format
来格式化浮点数,同样设置精度为 2 位小数,并使用科学计数法表示。
需要注意的是,std::setprecision
和 std::scientific
可以单独使用,也可以一起使用。如果同时使用它们,那么 std::scientific
将优先应用于浮点数的表示。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。