c语言,将奇数和偶数分类

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

**思路:像冒泡排序那样,相邻两个数比较,两个都是偶数则不动,左偶右奇把偶和奇交换一下,**如1234,12不符合不动,23符号条件,交换一下,就是1324,第一个数比完再比第二个数,以此类推。

例子:

1 2 3 4 5 6

1 3 2 4 5 6

1 3 2 5 4 6

1 3 5 2 4 6

代码:

cpp 复制代码
#include<stdio.h>
void JO(int arr[], int sz)
{
	int i = 0;
	for (i = 0; i < sz; i++)
	{
		int j = 0;
		for (j = 0; j < sz-i-1; j++)
		{
			if (arr[j] % 2 == 0 && arr[j + 1] % 2 != 0)
			{
				int tmp = arr[j];
				arr[j] = arr[j + 1];
				arr[j + 1] = tmp;
			}
		}
	}
}
int main()
{
	int arr[10];
	int sz = sizeof(arr) / sizeof(arr[0]);
	int i = 0;
	for (i = 0; i < 10; i++)
	{
		scanf("%d", &arr[i]);
	}
	JO(arr, sz);
	int j = 0;
	for (j = 0; j < 10; j++)
	{
		printf("%d ", arr[j]);
	}
}

效果呈现:

相关推荐
crescent_悦几秒前
PTA C++:正整数A+B
数据结构·c++·算法
丶小鱼丶2 分钟前
数据结构和算法之【链表】
java·数据结构·算法
礼拜天没时间.3 分钟前
力扣热题100实战 | 第31期:下一个排列——数组规律的极致探索
java·算法·leetcode·字典序·原地算法·力扣热题100
ws540d4 分钟前
Ranking All UsersLast Updated: 2026-03-14(Sat) 19:46算法启发式活跃用户所有用户
算法
进击的小头8 分钟前
第8篇:线性二次型调节器
python·算法·动态规划
Z9fish9 分钟前
sse哈工大C语言编程练习42
c语言·开发语言·算法
炸膛坦客16 分钟前
单片机/C语言八股:(十三)C 语言实现矩阵乘法
c语言·开发语言·矩阵
一个有毅力的吃货23 分钟前
这个SKILL打通了AI写公众号文章的最后一公里
css·算法
free-elcmacom27 分钟前
C++ 函数占位参数与重载详解:从基础到避坑
java·前端·算法
Frostnova丶30 分钟前
LeetCode 1415. 长度为 n 的开心字符串中字典序第 k 小的字符串
数据结构·算法·leetcode