@Backer 2021-09-05 10:09 采纳率: 20%
浏览 403
已结题

偶数降序输出 !!急!!

偶数降序输出
给定一个长度为N(不大于500)的正整数序列,请将其中的所有偶数取出,并按降序输出。

时间限制:1000
内存限制:65536
输入
共2行: 第1行为 N; 第2行为 N 个正整数,其间用空格间隔。
输出
降序输出的偶数序列,数之间以空格间隔。数据保证至少有一个偶数。
样例输入
10
1 3 2 6 5 4 9 8 7 10
样例输出
10 8 6 4 2

  • 写回答

4条回答 默认 最新

  • CSDN专家-Time 2021-09-05 10:12
    关注

    你把序列扔到数组里。用算法库的sort排序一下就行了。

    #include <stdio.h>
    #include <algorithm>
    using namespace std;
    #pragma warning(disable:4996)
    bool cmp1(int a, int b)//int为数组数据类型
    {
        return a > b;//降序排列
        //return a<b;//默认的升序排列
    }
    int main() {
        int arrs[1000];
        int n = 0;
        int count = 0;
        scanf("%d", &n);
        for (int i = 0; i < n; i++) {
            int x = 0;
            scanf("%d", &x);
            if (x % 2 == 0) {
                arrs[count++] = x;
            }
        }
        sort(arrs, arrs + count, cmp1);
        for (int i = 0; i < count; i++) {
            printf("%d ", arrs[i]);
        }
    }
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 9月5日
  • 已采纳回答 9月5日
  • 赞助了问题酬金 9月5日
  • 创建了问题 9月5日