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

C++使用for循环实现奇数偶数分类排序输出

以下是使用C++语言,结合`for`循环实现将输入的`n`个正整数中的奇数和偶数分别按从小到大顺序输出的代码: ```cpp #include <iostream> #include <vector> #include <algorithm> int main() { int n; std::cin >> n; std::vector<int> oddNumbers; // 用于存储奇数 std::vector<int> evenNumbers; // 用于存储偶数 // 读取n个正整数 for (int i = 0; i < n; ++i) { int num; std::cin >> num; if (num % 2 == 1) { oddNumbers.push_back(num); } else { evenNumbers.push_back(num); } } // 对奇数和偶数向量进行排序 std::sort(oddNumbers.begin(), oddNumbers.end()); std::sort(evenNumbers.begin(), evenNumbers.end()); // 输出排序后的奇数 for (int i = 0; i < oddNumbers.size(); ++i) { if (i > 0) { std::cout << " "; } std::cout << oddNumbers[i]; } std::cout << std::endl; // 输出排序后的偶数 for (int i = 0; i < evenNumbers.size(); ++i) { if (i > 0) { std::cout << " "; } std::cout << evenNumbers[i]; } std::cout << std::endl; return 0; } ``` ### 代码解释 1. **包含必要的头文件**: - `iostream`用于输入输出操作。 - `vector`用于动态存储奇数和偶数。 - `algorithm`用于使用`std::sort`函数对向量进行排序。 2. **定义向量**: - `oddNumbers`向量用于存储输入的奇数。 - `evenNumbers`向量用于存储输入的偶数。 3. **读取正整数并分类**: - 使用`for`循环读取`n`个正整数,根据每个数是否为奇数(`num % 2 == 1`)将其添加到对应的向量中。 4. **排序向量**: - 使用`std::sort`函数对`oddNumbers`和`evenNumbers`向量进行排序。 5. **输出结果**: - 分别使用`for`循环输出排序后的奇数和偶数,中间用空格分隔,每行末尾换行。 ### 开发建议 - **边界条件检查**:可以添加对输入的`n`是否在有效范围内(`n <= 100`)的检查,增强程序的健壮性。 - **输入有效性检查**:可以增加对输入的正整数的有效性检查,确保输入的都是合法的正整数。 - **代码复用**:可以将分类和排序操作封装成函数,提高代码的复用性。 ######[AI写代码神器 | 699点数解答 | 2026-08-15 15:34:13]

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