C++ L13 奇数序列排序
-
给定一个长度为N的正整数序列,
-
请将其中的所有奇数取出,并按增序(从小到大)输出。
-
输入:
共2行
第1行是一个正整数 N(不大于500);
第2行有 N 个正整数(小于100,000),相邻两数之间用空格隔开。
- 输出:
输出1行,为增序的奇数序列,两数之间以英文逗号分隔。
题目数据保证至少有一个奇数。
注意:输出数据不得有多余的逗号
- 输入样例:
10
10 3 8 6 7 4 9 5 2 1
- 输出样例:
1,3,5,7,9
#include <iostream>
#include <algorithm>
using namespace std;int main() {int N;cin >> N;// 定义存储奇数的数组,初始长度为输入的正整数 Nint arr[N];int oddCount = 0;for (int i = 0; i < N; i++) {int num;cin >> num;// 判断输入的数是否为奇数if (num % 2!= 0) {// 将奇数存入数组并计数arr[oddCount++] = num;}}// 对存储奇数的数组进行排序sort(arr, arr + oddCount);for (int i = 0; i < oddCount; i++) {cout << arr[i];// 判断是否为最后一个奇数,决定是否输出逗号if (i < oddCount - 1) {cout << ",";}}return 0;
}