📅  最后修改于: 2023-12-03 14:39:57.273000             🧑  作者: Mango
在 C++ 中,有一个有用的函数可以帮助我们对浮点数进行四舍五入操作。这个函数就是 round()
。
round()
的用法很简单,只需要包含 <cmath>
头文件后调用即可。它接受一个浮点数作为参数,返回最接近该浮点数的整数,如果有两个整数与该浮点数距离相同,则返回偶数。
下面是一个使用 round()
函数的例子:
#include <iostream>
#include <cmath>
int main() {
std::cout << "round(3.14) = " << round(3.14) << std::endl; // 3
std::cout << "round(3.5) = " << round(3.5) << std::endl; // 4
std::cout << "round(3.6) = " << round(3.6) << std::endl; // 4
std::cout << "round(4.5) = " << round(4.5) << std::endl; // 4
std::cout << "round(5.5) = " << round(5.5) << std::endl; // 6
return 0;
}
round()
只在 C++11 及以后的版本中可用,如果使用 C++98,需要自己实现。round()
的函数原型为 double round(double arg)
,参数和返回值都是浮点型,如果需要将浮点数四舍五入为整数,则需要先将其转换成整型。如果想手动实现 round()
函数,可以参考以下代码:
int my_round(double x) {
if (x >= 0) {
return static_cast<int>(x + 0.5);
} else {
return static_cast<int>(x - 0.5);
}
}
该函数接受一个浮点数作为参数,返回最接近该浮点数的整数,如果有两个整数与该浮点数距离相同,则返回偶数。