设计一个函数,将整数数组a[n]划分为左右两部分,使左边所有元素值为奇数,右边所有值为偶数
#include<stdio.h>
#include<math.h>
#define N 6
int devide(int a[],int n) {
int s,e,temp,k;
s=0;//从左到右,起始坐标
e=n-1;//从右到左,起始坐标
while(s<e) {
while(a[s]%2!=0) s++;//从左到右,找到第一个偶数元素
while(a[e]%2==0) e--;//从右到左,找到第一个奇数元素
if(s<e) {//交换
temp=a[s];
a[s]=a[e];
a[e]=temp;
}
}
for(k=0; k<n; k++) {
printf("%d ",a[k]);
}
return 0;
}
int main() {
int x[N];
int i;
for(i=0; i<N; i++) {
scanf("%d",&x[i]);
}
devide(x,N);//传递数组名(数组首地址),数组长度
return 0;
}