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

版权声明: https://blog.csdn.net/spaceman_c/article/details/79927731
调整数组使奇数全部位于偶数前面
#include<stdio.h>
#include<stdlib.h>
void compare(int *arr, int len)
{
    int i = 0;
    int j = 0;
    for (i = 0; i < len; i++)//遍历数组
    {
        if (arr[i] % 2 == 0)//判断奇偶,若为偶数则执行下面的程序
            for (j = i + 1; j < len; j++)
            {
                int tem = 0;
                if (arr[j] % 2 == 1)//若为奇数,则交换
                {
                    tem = arr[j];
                    arr[j] = arr[i];
                    arr[i] = tem;
                    break;
                }
            }
    }
    printf("交换之后arr[]:");
    for (i = 0; i < len; i++)//打印排序之后数组
    {
        printf("%3d", arr[i]);
    }
    printf("\n");
}
int main()
{
    int arr[] = { 1,2,3,4,5,6,7,8,9 };
    int sz = sizeof(arr) / sizeof(arr[0]);
    int i = 0;
    printf("交换之前arr[]=");
    for (i = 0; i <sz; i++)//打印之前的数组
    {
        printf("%3d", arr[i]);
    }
    printf("\n");
    compare(arr, sz);
    system("pause");
    return 0;

}

这里写图片描述

猜你喜欢

转载自blog.csdn.net/spaceman_c/article/details/79927731