【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;
}
相关推荐
我找到地球的支点啦23 分钟前
Matlab系列(006) 一利用matlab保存txt文件和读取txt文件
开发语言·算法·matlab
历程里程碑32 分钟前
双指针巧解LeetCode接雨水难题
java·开发语言·数据结构·c++·python·flask·排序算法
Dev7z36 分钟前
基于Matlab实现GRACE卫星重力数据的全球水储量变化估算与分析
人工智能·算法·matlab
爱喝热水的呀哈喽1 小时前
11题目汇总
算法
三斗米2 小时前
Transformer入门:一文读懂《Attention Is All You Need》
算法·架构
橘颂TA2 小时前
【剑斩OFFER】算法的暴力美学——链表相加(二)
数据结构·链表·牛客·结构与算法
报错小能手2 小时前
数据结构 可扩展哈希
数据结构·哈希算法·散列表
Swift社区2 小时前
LeetCode 458 - 可怜的小猪
算法·leetcode·职场和发展
AI科技星2 小时前
宇宙的像素:真空中一点如何编码无限星光
数据结构·人工智能·算法·机器学习·重构
程芯带你刷C语言简单算法题2 小时前
Day37~求组合数
c语言·开发语言·学习·算法·c