酷代码 AI
菜单
服务商
DeepSeek字节豆包
更多选项

C++ 实现四舍五入与向上/向下取整等个数统计

以下是一个 C++ 程序,用于读取 n 个小数,进行四舍五入后,统计结果等于向上取整的个数和等于向下取整的个数。 ```cpp #include <iostream> #include <cmath> // 包含 round, ceil, floor 函数 using namespace std; int main() { int n; cout << "请输入数字的个数: "; cin >> n; // 输入数字个数 int roundEqualCeil = 0; // 四舍五入结果等于向上取整的个数 int roundEqualFloor = 0; // 四舍五入结果等于向下取整的个数 for (int i = 0; i < n; ++i) { double num; cout << "请输入第 " << i + 1 << " 个小数: "; cin >> num; // 计算四舍五入、向上取整、向下取整 double rounded = round(num); double ceilVal = ceil(num); double floorVal = floor(num); if (rounded == ceilVal) { roundEqualCeil++; } if (rounded == floorVal) { roundEqualFloor++; } } // 输出结果 cout << "四舍五入结果等于向上取整的个数: " << roundEqualCeil << endl; cout << "四舍五入结果等于向下取整的个数: " << roundEqualFloor << endl; return 0; } ``` ### 💡 代码说明 - `round()`:C++ 标准库函数,进行四舍五入。 - `ceil()`:向上取整。 - `floor()`:向下取整。 - 程序逐一比较四舍五入后的结果与向上取整/向下取整结果,相等则计数加一。 ### 🔍 开发注意事项 - 输入小数时需注意浮点数精度问题,例如 `1.0` 与 `1` 在数学上相等,但浮点数存储可能有微小偏差,导致 `round` 结果与 `ceil`/`floor` 不完全一致。建议使用 `double` 类型,并考虑使用比较误差容忍度(如 `fabs(a - b) < 1e-9`)以避免判断失误。 - 确保头文件包含 `<cmath>`,否则无法使用 `round`, `ceil`, `floor`。 ######[AI问答 | 538点数解答 | 2026-07-17 20:11:03]

相关提问
本站限时免费提问中
实用工具查看更多
Linux在线手册 [开发类]
Jquery在线手册 [开发类]
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]