酷代码 AI
菜单
服务商

C++实现整数序列奇偶分类排序

以下是实现该功能的C++代码: ```cpp #include <iostream> #include <vector> #include <algorithm> // 自定义比较函数,用于奇数从大到小排序 bool compareOdd(int a, int b) { return a > b; } // 自定义比较函数,用于偶数从小到大排序 bool compareEven(int a, int b) { return a < b; } int main() { int n; std::cin >> n; std::vector<int> odd; // 存储奇数 std::vector<int> even; // 存储偶数 for (int i = 0; i < n; ++i) { int num; std::cin >> num; if (num % 2 == 1) { odd.push_back(num); } else { even.push_back(num); } } // 对奇数进行从大到小排序 std::sort(odd.begin(), odd.end(), compareOdd); // 对偶数进行从小到大排序 std::sort(even.begin(), even.end(), compareEven); // 输出排序后的结果 for (int i = 0; i < odd.size(); ++i) { std::cout << odd[i]; if (i < odd.size() - 1 || !even.empty()) { std::cout << " "; } } for (int i = 0; i < even.size(); ++i) { std::cout << even[i]; if (i < even.size() - 1) { std::cout << " "; } } std::cout << std::endl; return 0; } ``` ### 代码解释: 1. **输入处理**:首先读取整数`n`,表示序列的长度。然后循环读取`n`个整数,根据其奇偶性分别存储到`odd`和`even`向量中。 2. **排序**:使用`std::sort`函数对`odd`向量按从大到小排序,对`even`向量按从小到大排序。 3. **输出**:先输出排序后的奇数,再输出排序后的偶数,数与数之间用空格分隔。 ######[AI问答 | 530点数解答 | 2026-02-27 22:27:29]

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