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]);
	}
}

效果呈现:

相关推荐
洛水水10 分钟前
【力扣100题】14.两数相加
c++·算法·leetcode
我不是小upper12 分钟前
相关≠因果!机器学习中皮尔逊相关检验的完整流程
人工智能·算法·机器学习
pwn蒸鱼14 分钟前
leetcode:21. 合并两个有序链表
算法·leetcode·链表
洛水水16 分钟前
【力扣100题】15.删除链表的倒数第 N 个结点
算法·leetcode·链表
范纹杉想快点毕业20 分钟前
Zynq开发视角下的C语言能力分级详解
c语言·开发语言
LTphy22 分钟前
深度优先搜索的三种模板
算法·深度优先·图论
paeamecium24 分钟前
【PAT甲级真题】- Insert or Merge (25)
数据结构·c++·算法·排序算法·pat考试·pat
不爱吃炸鸡柳28 分钟前
6道经典算法题详解:从排序到链表,覆盖面试高频考点
算法·链表·面试
wfbcg31 分钟前
每日算法练习:LeetCode 3. 无重复字符的最长子串 ✅
算法·leetcode·职场和发展
_日拱一卒35 分钟前
LeetCode:矩阵置零
java·数据结构·线性代数·算法·leetcode·职场和发展·矩阵