【蓝桥等考C++真题】蓝桥杯等级考试C++组第13级L13真题原题(含答案)-奇数序列排序

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

cpp 复制代码
#include <iostream>
#include <algorithm>
using namespace std;

int main() {
    int N;
    cin >> N;
    // 定义存储奇数的数组,初始长度为输入的正整数 N
    int 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;
}
相关推荐
王老师青少年编程11 小时前
2026年6月GESP真题及题解(C++一级):交税
c++·题解·真题·gesp·一级·2026年6月·交税
Jerry11 小时前
LeetCode 160. 相交链表
算法
Jerry11 小时前
LeetCode 19. 删除链表的倒数第 N 个结点
算法
金銀銅鐵12 小时前
费马小定理
python·数学·算法
技术不好的崎鸣同学13 小时前
[ACTF2020 新生赛]Exec 思路及解法
算法·安全·web安全
Full Stack Developme14 小时前
Java LRU 与 LFU 算法及应用
java·开发语言·算法
Jerry15 小时前
LeetCode 707. 设计链表
算法
疋瓞15 小时前
python和C++对比(1)_数据类型和数据结构
数据结构·c++·python
C语言小火车16 小时前
C++ 堆排序深度精讲:基于完全二叉树的选择排序进化,最坏情况 O(n log n) 的稳定王者
开发语言·c++·算法·排序算法·堆排序