//调整奇数偶数的顺序
//输入一个整数数组,实现一个函数
//使得数组中所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分
#include<stdio.h>
void tz(int a[],int sz)
{
int i = 0;
int j = 0;
int q = 0;
int c[100] = { 0 };
int b[100] = { 0 };
for (i = 0; i < sz; i++)
{
//存入偶数
if (a[i] % 2 == 0)
{
b[j++] = a[i];
}
//存入奇数
else
{
c[q++] = a[i];
}
}
int p = 0;
int m = 0;
for (i = 0; i < sz; i++)
{
if (i < q)
{
a[i] = c[p++];
}
else
{
a[i] = b[m++];
}
}
for (i = 0; i < sz; i++)
{
printf("%d ", a[i]);
}
printf("\n");
}
int main() {
/*int a[100] = { 0 };
int sz = 0;
printf("请输入这个数组有多少个数字:");
scanf("%d",&sz);
int i = 0;
printf("请输入这个数组的值:");
for (i = 0; i < sz; i++)
{
scanf("%d", &a[i]);
}*/
int a[10] = { 1,2,3,4,5,6,7,8,9,10 };
int sz = sizeof(a) / sizeof(a[0]);
int i = 0;
tz(a, sz);
for (i = 0; i < sz; i++)
{
printf("%d ", a[i]);
}
printf("\n");
return 0;
}
输出结果: