/*
调整一个整型数组:奇数排在前面,偶数排在后面
*/
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
void Paixu(int* a, int s)
{
int i = 0, j = 0;
int* left = a;
int* right = a + s - 1;
while (left < right)
{
while ((left < right) && (*left % 2 != 0)) //从左往右找一个偶数
{
left++;
}
while ((left < right) && (*right % 2 == 0)) //从右到左找一个奇数
{
right--;
}
int t = *left; //交换两个数
*left = *right;
*right = t;
left++;
right--;
}
}
int main()
{
int i = 0;
int arr[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
int sz = sizeof(arr) / sizeof(arr[0]);
Paixu(arr, sz);
for (i = 0; i < 10; i++)
{
printf("%d ", arr[i]);
}
}
c语言-调整一个整型数组:奇数排在前面,偶数排在后面
于 2022-07-28 21:02:20 首次发布