【蓝桥等考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;
}
相关推荐
IronMurphy18 小时前
【算法四十八】416. 分割等和子集
算法
WYH28718 小时前
C语言结构体变量和结构体指针详解:定义、访问、传参与易错点总结
c语言·开发语言·算法
我不是懒洋洋18 小时前
从零实现Transformer:从注意力机制到ChatGPT
c语言·数据结构·c++·经验分享
学习中的码虫19 小时前
(C++)从this构造shared_ptr导致多控制块的处理
c++
m0_7488394919 小时前
利用C 图形界面展示MATLAB算法的高效混合编程实践
开发语言·算法·matlab
进击的荆棘19 小时前
优选算法——哈希表
c++·算法·leetcode·哈希算法·散列表
阿牛大牛中19 小时前
阿里-RecGPT-Mobile
大数据·人工智能·算法
RH23121119 小时前
2026.5.17数据结构 八大排序
数据结构·算法·排序算法
加号319 小时前
【C#】 实现 CRC16 校验:原理、算法与工程实践
算法·c#
蜡笔小马19 小时前
12.C++设计模式-模板方法模式
c++·设计模式·模板方法模式