C++ 实现对输入小数四舍五入与上下取整结果统计
以下是实现上述功能的 C++ 代码: ```cpp #include <iostream> #include <iomanip> #include <cmath> int main() { int n; std::cin >> n; int ceilingCount = 0; int floorCount = 0; for (int i = 0; i < n; ++i) { double num; std::cin >> num; // 四舍五入的结果 int rounded = static_cast<int>(std::round(num)); // 向上取整的结果 int ceilingResult = static_cast<int>(std::ceil(num)); // 向下取整的结果 int floorResult = static_cast<int>(std::floor(num)); // 判断四舍五入结果是否和向上取整结果相等 if (rounded == ceilingResult) { ceilingCount++; } // 判断四舍五入结果是否和向下取整结果相等 if (rounded == floorResult) { floorCount++; } } std::cout << ceilingCount << " " << floorCount << std::endl; return 0; } ``` ### 代码解释: 1. **输入处理**:首先从标准输入读取一个正整数 `n`,表示后续要输入的小数的个数。 2. **初始化计数器**:创建两个变量 `ceilingCount` 和 `floorCount`,分别用于记录四舍五入结果与向上取整结果相等的个数和四舍五入结果与向下取整结果相等的个数。 3. **循环读取小数**:使用 `for` 循环 `n` 次,每次读取一个小数。 4. **计算相关结果**:对于每个读取的小数,使用 `std::round` 函数计算四舍五入的结果,使用 `std::ceil` 函数计算向上取整的结果,使用 `std::floor` 函数计算向下取整的结果。 5. **更新计数器**:比较四舍五入结果与向上取整结果,如果相等则 `ceilingCount` 加 1;比较四舍五入结果与向下取整结果,如果相等则 `floorCount` 加 1。 6. **输出结果**:循环结束后,输出 `ceilingCount` 和 `floorCount` 的值。 ######[AI问答 | 550点数解答 | 2026-07-18 20:13:37]
- 易语言子程序 TriggerCode 代码详解:通配符查找与结果运算(字节豆包 | 607点数解答 | 2026-02-09 11:59:34)95
- Java 实现:从点类到圆类,计算圆心坐标(50,30)、半径 4 的圆周长与面积(字节豆包 | 246点数解答 | 2024-11-11 16:36:30)405
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)528
- Python:轻松提取10.0到99.0小数的整数部分(字节豆包 | 136点数解答 | 2026-01-11 19:23:18)89
- C++ 实现小数四舍五入:含代码及进位处理注意点(字节豆包 | 598点数解答 | 2025-07-05 15:32:23)306
- 帮胖虎小夫70周年友谊派对分派,精准计算两种输出方案!(阿里通义 | 672点数解答 | 2024-10-20 21:46:18)232
- C++ 助力胖虎小夫 70 周年派对派分难题!精准输出派的分配大小(阿里通义 | 523点数解答 | 2024-10-20 21:46:33)196
- C++ 助力胖虎小夫 70 周年友谊派对:精准分派难题迎刃而解!(阿里通义 | 570点数解答 | 2024-10-20 21:47:23)241
- C++实现图像模糊化处理:含代码、解释与复杂度分析(字节豆包 | 670点数解答 | 2025-11-10 18:55:33)177
- C++实现图像像素灰度值模糊化处理:输入输出全解析(字节豆包 | 655点数解答 | 2025-12-01 14:24:01)145
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)447
- 星际编码大赛终极对决:机械星AI与异星人激战“逆序对”统计难题(字节豆包 | 509点数解答 | 2025-04-19 17:33:00)331