【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;
}
相关推荐
yi.Ist1 分钟前
2025CCPC郑州邀请赛
c++·学习·算法·acm
少许极端12 分钟前
算法奇妙屋(四十八)-单调栈
java·算法·单调栈
水木流年追梦23 分钟前
CodeTop Top 300 热门题目2-最长回文子串
开发语言·人工智能·python·算法·leetcode
图码23 分钟前
递归入门:从n到1的优雅打印之旅
数据结构·c++·算法·青少年编程·java-ee·逻辑回归·python3.11
大肥羊学校懒羊羊23 分钟前
题解:计算约数个数
数据结构·c++·算法
生信之灵33 分钟前
拓扑与曲率双剑合璧:scGeom如何从单细胞数据中“看见”细胞命运
人工智能·深度学习·算法·单细胞·多组学
良木生香34 分钟前
【C++初阶】:STL——String从入门到应用完全指南(3)
c语言·开发语言·数据结构·c++·算法
_深海凉_40 分钟前
LeetCode热题100-在排序数组中查找元素的第一个和最后一个位置
算法·leetcode·职场和发展
qyzm1 小时前
Educational Codeforces Round 189 (Rated for Div. 2)
数据结构·python·算法
fox_lht1 小时前
8.3.使用if let和let else实现简明的程序流控制
开发语言·后端·算法·rust