将数组分为两部分,左边为奇数,右边的为偶数
吉林大学计算机考研高级语言程序设计
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
//左边为奇数,右边为偶数
int main()
{
int a[100];
int i=0;
//有的编译器按回车后需要按ctrl+z结束输入
while(scanf("%d",&a[i])!=EOF)
{
i++;
}
i--;
int j=0;
int k=i;
while(j<=k)
{
while(a[j]%2!=0)
{
j++;
}
while(a[k]%2==0)
{
k--;
}
//如果j已经大于k了就不需要交换了
if(j<=k)
{
int temp=a[j];
a[j]=a[k];
a[k]=temp;
}
}
for(int d=0;d<=i;d++)
{
printf("%d ",a[d]);
}
return 0;
}