题目描述

给你一个有n个整数的序列,a1,a2,a3,....an(下标从1开始)。
现在进行下列操作,将下标为奇数的元素按照升序排列,下标为偶数的元素按照降序排列,然后输出。
比如,给你n=8,序列为 2 6 7 1 3 8 9 4。
则下标为奇数的元素有2 7 3 9,排序后为2 3 7 9。
下标为偶数的元素有6 1 8 4,排序后为8 6 4 1。
则输出为 2 8 3 6 7 4 9 1

输入

输入数据包含多组。每一组测试数据的第一行为一个整数n(n<1000),表示序列的个数,第二行有以空格隔开的n个整数a1,a2,a3,...an。输入数据以n=0结束

输出

按要求输出,每一个序列占一行,每两个元素之间用空格隔开(每一行最后不应包含空格)。

输入输出样例

样例输入 #1

8
2 6 7 1 3 8 9 4
0

样例输出 #1

2 8 3 6 7 4 9 1

参考解答:

#include<stdio.h>
int main()
{int n, i, j=0, t;while (scanf("%d", &n) != EOF){if (n == 0)break; else{int a[1005];for (i = 1; i <= n; i++)scanf("%d", &a[i]);for (i = 1; i <= n; i = i + 2){for (j = i; j <= n; j = j + 2){if (a[j] < a[i]){t = a[i];a[i] = a[j];a[j] = t;}}}for (i = 2; i <= n; i = i + 2){for (j = i; j <= n; j = j + 2){if (a[j] > a[i]){t = a[i];a[i] = a[j];a[j] = t;}}}for (i = 1; i <= n; i++)printf("%d ", a[i]);}}return 0;
}

YTU 问题 : 数组奇偶操作相关推荐

  1. java数组如何pop_Js数组的操作push,pop,shift,unshift等方法详细介绍

    js中针对数组操作的方法还是比较多的,今天突然想到来总结一下,也算是温故而知新吧.不过不会针对每个方法进行讲解,我只是选择其中的一些来讲. 首先来讲一下push和pop方法,这两个方法只会对数组从尾部 ...

  2. C# 指定格式的字符串截成一维数组(二维数组)的操作类

    指定格式的字符串截成一维数组(二维数组)的操作类 做项目时经常会遇到将"1,3,a,b,d"截成一维数组或将"1,a;2,b;3,c;4,d"截成二维数组.虽然 ...

  3. JAVA-初步认识-第五章-数组-常见操作-最值

    一. 最值 数组的操作是对数组中的元素进行操作,有时需要对元素的位置重新进行安排,有时仅需要提供题目需要的那个数据. 在视频没有讲解怎么做之前,我先提供一个思路.得出最值肯定是一个一个地比较出来的,这 ...

  4. 【C 语言】字符串操作 ( 使用 数组下标 操作字符串 | 使用 char * 指针 操作字符串 )

    文章目录 一.使用 数组下标 或 指针 操作字符串 1.使用 数组下标 操作字符串 2.使用 char * 指针 操作字符串 二.代码示例 一.使用 数组下标 或 指针 操作字符串 1.使用 数组下标 ...

  5. Java数组常见操作

    Java数组常见操作 文章目录 Java数组常见操作 7.0 数组的遍历 1.使用foreach循环访问数组中每个元素. 2.使用简单的for循环(多层循环嵌套)来遍历数组. 7.1 数组长度 7.2 ...

  6. java web定义数组_Java基础之数组--数组常用操作

    3.2一维数组 3.2.1声明数组 数组类型[] 数组名称:int[] username; 或者 数组类型 数组名称[];int username[]; 3.2.2初始化一维数组 一维数组初始化有两种 ...

  7. 转 C#对多个集合和数组的操作(合并,去重,判断)

    在开发过程中.数组和集合的处理是最让我们担心.一般会用for or foreach 来处理一些操作.这里介绍一些常用的集合跟数组的操作函数. 首先举例2个集合A,B. List<int> ...

  8. 快学Scala习题解答—第三章 数组相关操作

    原文链接:http://blog.csdn.net/ivan_pig/article/details/8257365 ----------------------------------------- ...

  9. 动态数组相关操作 0104 ArrayList

    动态数组相关操作 0104 引入命名空间 using System.Collections; 实例化一个动态数组 类名称:ArrayList 基本的实例化 ArrayList 数组名= new Arr ...

最新文章

  1. 我的 Serverless 实战 — 云函数与触发器的创建与使用 ( 开通腾讯云 “ 云开发 “ 服务 | 创建云函数 | 创建触发器 | 测试触发器 )
  2. Java要怎么入门?初学者要怎么学?
  3. 音视频技术开发周刊 | 180
  4. linux 多个会话同时执行命令后history记录不全的解决方案
  5. vue-router嵌套路由,默认子路由设置
  6. java的actioncontext_【疑惑】ActionContext ac = ActionContext.getContext();?
  7. oracle数据库的重复数据处理
  8. 【Django 2021年最新版教程36】 python django runserver 后台运行
  9. 学堂云3大学计算机基础答案,学堂云3答案查询公众号
  10. 三通道HART / Modbus网关HTM-631
  11. Python爬虫下载喜马拉雅音频文件
  12. php把amr转换成mp3,php 微信amr转mp3的方法
  13. 读 Derek Sivers: Anything You Want
  14. iOS开发-iOS10新特性及开发者主要注意点
  15. 特征提取 - 海森矩阵(Hessian Matrix)及一个用例(图像增强)
  16. JMETER解决测试结果乱码问题
  17. Allegro关闭线段显示不连续效果操作指导
  18. python描述性统计命令_描述性统计_Python数据分析实战应用_数据挖掘与分析视频-51CTO学院...
  19. 白嫖-免费商用字体-收集
  20. Android 录音实现方法、仿微信语音、麦克风录音、发送语音

热门文章

  1. 权重衰减/权重衰退——weight_decay
  2. Unity3D学习—牧师与魔鬼—MVC模式和ECS架构应用
  3. Java开源项目合集<一>
  4. 未能导入activex控件,请确保它正确注册的完美解决方案
  5. 【四足机器人】SOLO技术详解--(3)实验与结果【翻译】
  6. 服务器主体信息截图,puppeteer实现线上服务器任意区域截图
  7. 16 - 12 - 06 克鲁斯卡尔(Kruskal)算法详解
  8. 2021教师资格考试结构化面试:家长说你教的不好,怎么办?
  9. Microsoft Outlook 2019 for mac(电子邮件和日历工具) v16.45Beta中文激活版
  10. Hadoop学习----Hadoop介绍