c++中的 取整和取余
时间: 2024-09-10 15:11:44 浏览: 42
C++中的取整操作和取余操作,更简单
3星 · 编辑精心推荐
在C++中,取整和取余操作用于处理数值之间的算术运算,特别是当需要对结果进行舍入或者保持部分信息的时候。主要有两个关键字来完成这两个操作:
1. **取整**(`std::round()`、`std::trunc()` 或 `std::floor()`):
- `std::round(x)`:对浮点数x四舍五入到最接近的整数。如果x的尾数是0.5,则向正方向(向上)舍入。
- `std::trunc(x)`:返回值小于等于x的最大整数。这个函数总是丢弃小数部分,不会四舍五入。
- `std::floor(x)`:返回不大于x的最大整数,适用于向下取整。
2. **取余**(`%` 运算符):
- `%` 运算符通常称为求模运算,它返回除法的余数。例如,`a % b` 的结果是在`[0, b-1]`范围内的整数,表示`a`除以`b`后的剩余部分。
例子:
```cpp
int a = 7.3;
int rounded_a = std::round(a); // 7 (四舍五入)
int truncated_a = std::trunc(a); // 7 (向下取整)
int remainder_b = a % 4; // 3 (7除以4的余数)
float f = 12.89;
int floored_f = std::floor(f); // 12 (向下取整)
```
阅读全文