题解 | 整数奇偶排序

#include <stdio.h>

int cmp1(const void *p1,const void *p2){
    return *((int*)p1)-*((int*)p2);
}
int cmp2(const void *p1,const void *p2){
    return *((int*)p2)-*((int*)p1);
}

int main() {
    int a[10];
    int b[10],c[10];
    while(scanf("%d",&a[0])!=EOF){
        int j=0,k=0;
        if(a[0]%2)
                b[j++]=a[0];
            else
                c[k++]=a[0];
        for(int i=1;i<10;i++){
            scanf("%d",&a[i]);
            if(a[i]%2)
                b[j++]=a[i];
            else
                c[k++]=a[i];
        }
        qsort(b,j,sizeof(int),cmp2);
        qsort(c,k,sizeof(int),cmp1);
        for(int m=0;m<j;m++)
            printf("%d ",b[m]);
        for(int m=0;m<k;m++)
            printf("%d ",c[m]);
        printf("\n");

    }
    return 0;
}

全部评论

相关推荐

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

创作者周榜

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