C语言实现奇偶排序(奇数在前,偶数在后)

简介: C语言实现奇偶排序(奇数在前,偶数在后)

目的:输入一个数组,使得数组中奇数在前,偶数在后。

代码:

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
  int arr[10] = {0};
  for (int i = 0; i <= 9; i++)
  {
    scanf("%d", &arr[i]);            //输入数组中的各个元素
  }
  int left = 0;
  int right = 9;
  while (left < right)     //循环实现
  {
    while ((left < right) && arr[left] % 2 == 1)
    {
      left++;                         //找到一个偶数后停下
    }
    while ((left < right) && arr[right] % 2 == 0)
    {
      right--;                        //找到一个奇数后停下
    }
    if (left < right)
    {
    int tmp = arr[left];               //然后交换这两个数的位置,实现奇数在前,偶数在后。
      arr[left] = arr[right];
        arr[right]=tmp;
    }
  }
  for (int i = 0; i <= 9; i++)
  {
    printf("%d ", arr[i]);       打印出排序后的数组内容。
  }
  return 0;
}

例如:第一行是输入的内容,第二行是排完序后的内容。

目录
相关文章
|
7月前
|
C语言
C语言——oj刷题——调整数组使奇数全部都位于偶数前面
C语言——oj刷题——调整数组使奇数全部都位于偶数前面
44 1
|
8月前
|
C语言
c语言编程练习题:7-51 求奇数分之一序列前N项和
c语言编程练习题:7-51 求奇数分之一序列前N项和
79 0
|
7月前
|
C语言
【C语言刷题系列】交换整数的奇数位和偶数位
【C语言刷题系列】交换整数的奇数位和偶数位
|
7月前
|
C语言
C语言----获取一个整数二进制序列中所有的偶数位和奇数位,分别打印出二进制序列
C语言----获取一个整数二进制序列中所有的偶数位和奇数位,分别打印出二进制序列
|
8月前
|
C语言
【C语言必刷题】1.打印1~100之间的奇数
【C语言必刷题】1.打印1~100之间的奇数
|
8月前
|
C语言
c语言编程练习题:7-25 求奇数和
c语言编程练习题:7-25 求奇数和
53 1
|
8月前
|
C语言
[C语言][题]获取一个整数二进制序列中所有的偶数位和奇数位,分别打印出二进制序列
[C语言][题]获取一个整数二进制序列中所有的偶数位和奇数位,分别打印出二进制序列
53 0
C语言第三十二弹---打印整数二进制的奇数位和偶数位
C语言第三十二弹---打印整数二进制的奇数位和偶数位
|
C语言
【C语言刷题】调整奇数偶数顺序、有序序列合并以及有序序列判断
【C语言刷题】调整奇数偶数顺序、有序序列合并以及有序序列判断
71 0
|
1月前
|
存储 C语言 开发者
【C语言】字符串操作函数详解
这些字符串操作函数在C语言中提供了强大的功能,帮助开发者有效地处理字符串数据。通过对每个函数的详细讲解、示例代码和表格说明,可以更好地理解如何使用这些函数进行各种字符串操作。如果在实际编程中遇到特定的字符串处理需求,可以参考这些函数和示例,灵活运用。
67 10