【蓝桥等考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;
}
相关推荐
笑容掩饰我的失落33 分钟前
区块链从小白到精通(七):Solidity 语法精讲——数据类型、函数、修饰器与事件
算法·区块链·php·智能合约·哈希算法
旖旎夜光1 小时前
【C++ 基础入门】C++11 新特性(中):右值引用、移动语义与完美转发
开发语言·c++·笔记·学习
ShineWinsu1 小时前
对于Qt:QTabWidget常见属性的解析
开发语言·数据库·c++·qt·浏览器·qtabwidget·标签页
Pniubi1 小时前
力扣24. 两两交换链表中的节点(递归)
算法·leetcode·链表
꧁细听勿语情꧂2 小时前
直接选择排序,堆排序,冒泡排序,递归快速排序、hoare版本、挖坑法、lomuto前后指针,非递归快速排序
c语言·开发语言·数据结构·算法
俊俊几年的3 小时前
动态规划(Dynamic Programming)详解:从入门到 LeetCode Hot 100
linux·c++·算法·leetcode·嵌入式·动态规划·c
小雉系统12 小时前
BcoreOS安全通信架构:FsSession 抗算法后门安全设计
算法·安全·架构
唐墨12316 小时前
linux kernel 比较数据大小的宏定义
linux·算法
拂拉氏16 小时前
【知识讲解-题目讲解】 统计满足K约束的子字符串数量2 (滑动窗口+前缀和+二分查找+分析)
算法·前缀和·二分查找·滑动窗口