C语言:调整数组是奇数位与偶数之前。

#include<stdio.h>
void move(int* arr, int sz)
{
    
    
	int left = 0;
	int right = sz - 1;
	
	while (left<right)
	{
    
    
		//找偶数
		while (arr[left] % 2 == 1)
		{
    
    
			left++;
		}
		//找奇数
		while (arr[right] % 2 ==0)
		{
    
    
			right--;
		}
		if (left<right)
		{
    
    
			int tmp = arr[left];
			arr[left] = arr[right];
			arr[right] = tmp;
		}
		
	}
}
int main()
{
    
    
	int arr[] = {
    
     1,3,5,7,9};
	int sz = sizeof(arr) / sizeof(arr[0]);
	move(arr, sz);
	for (int i = 0; i < sz; i++)
	{
    
    
		printf("%d ", arr[i]);
	}
	return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_45275802/article/details/113053215
今日推荐