【蓝桥等考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;
}
相关推荐
2401_869769592 分钟前
C/C++常识
c++
星马梦缘3 分钟前
算法设计导论 课堂笔记
算法·动态规划·分治·时间复杂度·最优二叉树
j7~1 小时前
【Linux】二十六.线程篇三《Linux多线程编程:线程控制、线程ID以及进程地址空间分布、线程局部存储__thread以及clone系统调用》---详解
linux·运维·服务器·开发语言·c++·多线程编辑·线程的控制
luj_176811 小时前
星火科技助力边远地区防病攻坚
c语言·开发语言·c++·经验分享·算法
zmzb010311 小时前
C++课后习题训练记录Day175
开发语言·c++
啦啦啦啦啦zzzz12 小时前
工具:动态类工厂和用配置文件存储属性
c++·设计模式·工具·动态工厂
脱胎换骨-军哥12 小时前
C++ 代码规范与格式化指南
开发语言·c++·代码规范
geats人山人海13 小时前
数据结构第六章c语言 树的存储下二叉树的概念和存储
c语言·数据结构·算法
漂流瓶jz14 小时前
UVA-12627 奇怪的气球膨胀 题解答案代码 算法竞赛入门经典第二版
算法·图论·递归·aoapc·算法竞赛入门经典·uva·12627
迷途之人不知返14 小时前
lambda表达式
c++