剑指offer的简单题目

题目(2):
输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。

参考代码:(c语言)

#include
#include
int swap(int array[],int a)
{
int left = 0;
int right = a - 1;
int temp = 0;
while(left {
while((left {
left ++;
}
while((left {
right --;
}
if(left {
temp = array[left];
array[left] = array[right];
array[right] = temp;
}
}
return 0;
}
int printf_array(int array[],int a)
{
int i = 0;
for(i = 0;i < a;i ++)
{
printf("%d “,array[i]);
}
return 0;
}
int main()
{
int n;
int i;
int array[100];
scanf(”%d",&n);
for(i=0;i scanf("%d",&array[i]);
swap(array,n);//函数调用
printf_array(array,n);//函数调用
return 0;
}

你可能感兴趣的:(每日练习)