#include <iostream>
using namespace std;
int cmp1(const void *a, const void *b) {//void指针类型做形参需重新定义类型
return *(int *)a - *(int *)b;
}
int cmp2(const void *a, const void *b) {//void指针类型做形参需重新定义类型
return *(int *)b - *(int *)a;
}
int main() {
int a[10];
int i = 0;
while (cin >> a[0]>>a[1]>>a[2]>> a[3] >> a[4] >> a[5] >> a[6] >> a[7] >> a[8] >> a[9]) {
int numO = 0, numE = 0, odd[10], even[10];
i = 0;
while (i < 10) {
if (a[i] % 2 == 0) even[numE++] = a[i];
else odd[numO++] = a[i];
i++;
}
qsort(odd, numO, sizeof(int), cmp2);
qsort(even, numE, sizeof(int), cmp1);
i = 0;
while (i < numO) {
cout << odd[i] << " ";
i++;
}
i = 0;
while (i < numE) {
cout << even[i] << " ";
i++;
}
cout << endl;
}
return 0;
}
poj 整数奇偶排序
最新推荐文章于 2018-06-01 23:18:45 发布