```cpp #include <iostream> #include <vector> using namespace std; int main() { int n; // 读取正整数 n,表示有 n 个正整数 cin >> n; // 定义两个向量,分别用于存储奇数和偶数 vector<int> oddNumbers; vector<int> evenNumbers; for (int i = 0; i < n; ++i) { int num; // 依次读取 n 个正整数 cin >> num; if (num % 2 == 1) { // 如果是奇数,添加到 oddNumbers 向量中 oddNumbers.push_back(num); } else { // 如果是偶数,添加到 evenNumbers 向量中 evenNumbers.push_back(num); } } // 输出奇数 for (int i = 0; i < oddNumbers.size(); ++i) { if (i > 0) { cout << " "; } cout << oddNumbers[i]; } cout << endl; // 输出偶数 for (int i = 0; i < evenNumbers.size(); ++i) { if (i > 0) { cout << " "; } cout << evenNumbers[i]; } cout << endl; return 0; } ``` 额外注意逻辑点 1. 注意向量的使用,要理解`push_back`方法是在向量末尾添加元素。 2. 在输出时,要注意处理数与数之间的空格,避免多余或缺少空格。 3. 输入的数是按顺序读取并分类的,要保证输出时也是按原顺序输出奇数和偶数。 [2025-08-03 07:44:57 | AI写代码神器 | 402点数解答]