c++中 将两位数四舍五入 使个位为0
时间: 2024-10-12 07:13:05 浏览: 19
求两个序列的中位数 减治法——C++代码
5星 · 资源好评率100%
在C++中,如果你有一个两位数的整数,想要将其四舍五入至个位为0,可以创建一个新的整数,并根据原始数字的小数部分进行调整。这里有一个简单的方法:
```cpp
#include <iostream>
int round_to_nearest_zero(double num) {
double integer_part = floor(num);
double decimal_part = num - integer_part; // 获取小数部分
// 四舍五入到最接近的整数倍
if (decimal_part >= 0.5 && decimal_part < 1.0) { // 如果小数部分大于等于0.5
integer_part += 1;
}
return static_cast<int>(integer_part); // 转换回整数并保持个位为0
}
int main() {
int input = 123.45;
int rounded = round_to_nearest_zero(input / 10.0) * 10; // 将原始数字除以10进行处理,再乘回去得到两位数
std::cout << "Rounded to two digits with last digit as 0: " << rounded << std::endl;
return 0;
}
```
这段代码首先将输入的两位数转换成double类型,然后四舍五入使其小数部分变为零,最后转换回整数。
阅读全文