C++ 实现奇数筛选与降序输出
根据题目要求,需要从输入的 n 个正整数中筛选出奇数,并按从大到小排序输出。以下是 C++ 实现代码,包含详细注释。 ```cpp #include <iostream> #include <vector> #include <algorithm> using namespace std; int main() { int n; cin >> n; // 读取数字个数 vector<int> odds; // 存储奇数的容器 int num; // 读取 n 个正整数,筛选奇数 for (int i = 0; i < n; i++) { cin >> num; if (num % 2 != 0) { // 判断是否为奇数 odds.push_back(num); } } // 从大到小排序 sort(odds.begin(), odds.end(), greater<int>()); // 输出奇数,空格分隔 for (size_t i = 0; i < odds.size(); i++) { if (i > 0) cout << " "; cout << odds[i]; } cout << endl; return 0; } ``` ### 代码说明 - 使用 `vector<int>` 动态存储所有奇数。 - 通过 `num % 2 != 0` 判断奇数(负奇数也可能出现,但题目明确是正整数)。 - 利用 `sort` 配合 `greater<int>()` 实现降序排列。 - 输出时控制空格,避免多余空格或换行问题。 ### 示例运行 输入: ``` 6 3 8 5 12 7 4 ``` 输出: ``` 7 5 3 ``` ### 复杂度分析 - 时间复杂度:O(n log n)(排序主导) - 空间复杂度:O(n)(存储奇数) ######[AI问答 | 391点数解答 | 2026-08-20 21:59:20]
- 使用位运算对黄金城原材料编号进行奇偶分类的C++程序(字节豆包 | 211点数解答 | 2026-02-28 20:38:57)108
- C++ 使用位运算判断材料编号奇偶性及代码修正(字节豆包 | 618点数解答 | 2026-07-25 20:29:18)30
- C++位运算判断整数奇偶性:原理、实现与最佳实践(DeepSeek | 791点数解答 | 2026-07-23 16:18:22)36
- 超详细!整数奇偶与倍数判断代码解析及补全(字节豆包 | 462点数解答 | 2026-01-08 12:43:56)127
- 整数奇偶性及倍数判断代码实现(字节豆包 | 405点数解答 | 2026-04-25 19:08:03)82
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)562
- Python爬虫:多页图片爬取与本地保存全流程揭秘(字节豆包 | 119点数解答 | 2025-01-05 12:49:42)314
- Python 网页图片爬取代码分析与优化建议:异常处理、路径优化及爬取规则遵守(字节豆包 | 172点数解答 | 2025-01-05 12:50:16)280
- Python爬虫实战:爬取https://file.kole8.com图片全流程优化与注意事项 (字节豆包 | 530点数解答 | 2025-01-05 12:50:26)248
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)477
- 幼儿园小朋友学号奇偶分类:代码实现与详细解释(字节豆包 | 406点数解答 | 2025-11-26 19:39:05)134
- 判断南瓜总数能否拆分为两个奇数——奇偶性决定一切(阿里通义 | 785点数解答 | 2026-03-13 12:12:50)107