题解 | #输入整型数组和排序标识,对其元素按照升序或降序进

输入整型数组和排序标识,对其元素按照升序或降序进行排序

https://www.nowcoder.com/practice/dd0c6b26c9e541f5b935047ff4156309

#include <stdio.h>
#include <stdlib.h>

int comparea(const void* a, const void* b) {
    int* intA = (int*)a;
    int* intB = (int*)b;
    return *intA - *intB;
}

int compared(const void* a, const void* b) {
    int* intA = (int*)a;
    int* intB = (int*)b;
    return *intB - *intA;
}

int main() {
    int n, o;
    int val[1000];
    while (scanf("%d", &n) != EOF) {
        for (int i = 0; i < n; i++) {
            scanf("%d", &val[i]);
        }
        scanf("%d", &o);
        if (o == 0) {
            qsort(val, n, sizeof(int), comparea);
        } else if (o == 1) {
            qsort(val, n, sizeof(int), compared);
        }
        for(int i = 0; i < n - 1; i++) {
            printf("%d ", val[i]);
        }
        printf("%d\n", val[n - 1]);
    }
    return 0;
}

全部评论

相关推荐

点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务