【C语言】R7-5 奇偶排序

R7-5 奇偶排序

分数 15

全屏浏览题目

切换布局

作者 wxr

单位 宁波财经学院

给定一个长度为n(0<n≤200)的正整数序列,按照以下要求排序:

  1. 奇数排在偶数前面;
  2. 奇数与偶数各自从小到大排列;

请根据以上要求完成排序,输出排序后的整数序列。

输入格式:

第一行给定一个整数n,第二行给出n个正整数,每个正整数不会超过int所能表示的范围。

输出格式:

输出排序后的整数序列,每行一个整数,共n行。

输入样例:

6
1 2 3 4 5 6

输出样例:

1
3
5
2
4
6

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

参考答案
cpp 复制代码
#include<stdio.h>
int main(){
    int n,i,sign=0,p=0,q=0,j,t;
    scanf("%d",&n);
    int group[n],jishu[n],oushu[n];
    if(n%2!=0)sign=1;
    for(i=0;i<n;i++){
        scanf("%d",&group[i]);
        if(group[i]%2==0)oushu[p++]=group[i];
        else jishu[q++]=group[i];
    }
    for(i=0;i<p-1;i++){
        for(j=0;j<p-1;j++){
            if(oushu[j]>oushu[j+1]){
                t=oushu[j];
                oushu[j]=oushu[j+1];
                oushu[j+1]=t;
            }
        }
    }
    for(i=0;i<q-1;i++){
        for(j=0;j<q-1;j++){
            if(jishu[j]>jishu[j+1]){
                t=jishu[j];
                jishu[j]=jishu[j+1];
                jishu[j+1]=t;
            }
        }
    }
    for(i=0;i<q;i++)
        printf("%d\n",jishu[i]);
    for(i=0;i<p;i++)
        printf("%d\n",oushu[i]);

    return 0;
}
相关推荐
狐小粟同学16 分钟前
链表面试编程题
数据结构·链表·面试
CyberMuse1 小时前
数值计算的程序设计问题举例
数据结构
陈奕迅本讯1 小时前
数据结构-链表笔记
数据结构·笔记·链表
江奖蒋犟1 小时前
【初阶数据结构】排序——归并排序
c语言·数据结构·算法
cdut_suye1 小时前
STL之list篇(下)(从底层分析实现list容器,逐步剥开list的外表)
开发语言·数据结构·c++·学习·算法·stl·list
大地之灯1 小时前
深度学习每周学习总结J1(ResNet-50算法实战与解析 - 鸟类识别)
人工智能·python·深度学习·学习·算法
流星白龙2 小时前
【C++算法】9.双指针_四数之和
开发语言·c++·算法
闻缺陷则喜何志丹2 小时前
【C++差分数组】2381. 字母移位 II|1793
c++·算法·字符串·力扣·差分数组·移位·方向
C++忠实粉丝2 小时前
模拟算法(1)_替换所有的问号
人工智能·算法
源代码•宸2 小时前
Leetcode—76. 最小覆盖子串【困难】
c++·经验分享·算法·leetcode·滑动窗口