#include<stdio.h>voidSwap(int* a,int* b)//交换数值{int t =*a;*a =*b;*b = t;}voidSort(int* p,int n){int i, j;for(i =0, j = n -1; i < j; i++, j--){while(p[i]%2==1&& i < j)//i<j为寻找的充分条件,不可缺少!
i++;//往后找偶数while(p[j]%2==0&& i < j)
j--;//从后往前找奇数Swap(p + i, p + j);//找到第一个偶数与第一个奇数时交换位置}}voidInput(int* p,int n)//数组输入{for(int i =0; i < n; i++){scanf("%d", p + i);}}voidprintArray(int* p,int n)//打印数组{for(int i =0; i < n; i++)printf("%d ", p[i]);}intmain(){int a[100], n;scanf("%d",&n);Input(a, n);Sort(a, n);printArray(a, n);return0;}