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

C++实现数字处理:负数取绝对值,正数四舍五入

### 🍎思路分析 本题需要读取输入的数字个数 `n` 以及 `n` 个数字,然后对每个数字进行处理。对于负数和0,输出其绝对值;对于正数,进行四舍五入。 ### 🍎代码实现 ```cpp #include <iostream> #include <cmath> #include <iomanip> int main() { int n; std::cin >> n; for (int i = 0; i < n; ++i) { double num; std::cin >> num; if (num <= 0) { std::cout << std::fixed << std::setprecision(0) << std::abs(num); } else { std::cout << std::fixed << std::setprecision(0) << std::round(num); } if (i < n - 1) { std::cout << " "; } } std::cout << std::endl; return 0; } ``` ### 🍎代码解释 1. **输入数字个数**:使用 `std::cin` 读取正整数 `n`,表示数字的个数。 2. **循环处理数字**:使用 `for` 循环读取 `n` 个数字,对于每个数字,判断其是否小于等于0。 - 如果数字小于等于0,使用 `std::abs` 函数计算其绝对值,并输出。 - 如果数字大于0,使用 `std::round` 函数进行四舍五入,并输出。 3. **输出格式**:在每个数字之间用空格分隔,最后一个数字后面换行。 ### 🍎复杂度分析 - **时间复杂度**:$O(n)$,其中 $n$ 是数字的个数。 - **空间复杂度**:$O(1)$,只使用了常数级的额外空间。 ### 🍎开发建议 - **输入验证**:在实际应用中,建议对输入进行验证,确保输入的 `n` 是正整数,并且输入的数字符合要求。 - **错误处理**:可以添加错误处理代码,例如当输入不符合要求时,输出错误信息。 - **代码复用**:可以将处理数字的逻辑封装成一个函数,提高代码的复用性。 ######[AI写代码神器 | 539点数解答 | 2026-05-09 19:42:10]

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