C语言编程 调整数组使奇数全部都位于偶数前面

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言编程 调整数组使奇数全部都位于偶数前面相关的知识,希望对你有一定的参考价值。

题目:
输入一个整数数组,实现一个函数,
来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分,
所有偶数位于数组的后半部分。

主要思想:
遍历这个数列,若遍历到的数字为奇数,则再次遍历数列找到第一个偶数与其交换位置。

源代码:

#include<stdio.h>
#include<stdlib.h>
void Exchange(int array[],int length)
{
    int i,m,temp;
    for (i = 0; i < length; i++)
    {
        if (array[i] % 2 != 0)
        {
            for (m = 0; m < length; m++)
            {
                if (array[m] % 2 == 0)
                {
                    temp = array[i];
                    array[i] = array[m];
                    array[m] = temp;
                    break;
                }
            }
        }
    }

}
int main()
{
    int i;
    int array[] = { 1,2,3,4,5,6,7,8,9 };
    int length = sizeof(array) / sizeof(array[0]);
    Exchange(array, length);
    for (i = 0; i < length; i++)
    {
        printf("%5d", array[i]);
    }
    system("pause");
    return 0;
}

以上是关于C语言编程 调整数组使奇数全部都位于偶数前面的主要内容,如果未能解决你的问题,请参考以下文章

用C语言简单的调整数组使奇数全部都位于偶数前面(或者后面)!!!

写一函数,调整数组使奇数全部都位于偶数前面

杨氏矩形和调整数组使奇数全部都位于偶数前面

调整数组使奇数全部都位于偶数前面。

C语言调整数组顺序使奇数位于偶数前面

调整数组顺序使奇数位于偶数前面(C语言+Java)