提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
问题
输入一个整数数组,实现一个函数,来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分,所有偶数位于数组的后半部分。
一、思路
众所周知,偶数是2的倍数、奇数不是2的倍数=>这就是本题的突破口。
因此用if语句判断。
二、关键代码
运用2个for循环即可实现。
for (i = 0; i < 6; i++)
{
if (arr[i] % 2 != 0)
{
printf("%d ", arr[i]);
}
}
for (i = 0; i < 6; i++)
{
if (arr[i] % 2 == 0)
{
printf("%d ", arr[i]);
}
}
运行代码
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
void adjust_arr(int* arr)
{
int i = 0;
for (i = 0; i < 6; i++)
{
if (arr[i] % 2 != 0)
{
printf("%d ", arr[i]);
}
}
for (i = 0; i < 6; i++)
{
if (arr[i] % 2 == 0)
{
printf("%d ", arr[i]);
}
}
printf("\n");
}
int main()
{
int arr[6] = { 12,3,7,4,1,9 };
adjust_arr(arr);
return 0;
}