问题描述:
描述
输入10个整数,彼此以空格分隔
重新排序以后输出(也按空格分隔),要求:
1.先输出其中的奇数,并按从大到小排列;
2.然后输出其中的偶数,并按从小到大排列。
输入
任意排序的10个整数(0~100),彼此以空格分隔
输出
按照要求排序后输出,由空格分隔
代码:
#include<iostream>
#include<stdio.h>
#include<algorithm>
using namespace std;
bool Compare(int x,int y){
if(x%2==0&&y%2==0){
return x<y;
}
else if(x%2!=0&&y%2!=0){
return x>y;
}
else if(x%2==0&&y%2!=0){
return false;
}
else{
return true;
}
}
int main(){
int a[10];
for(int i=0;i<10;i++){
scanf("%d",&a[i]);
}
sort(a,a+10,Compare);
for(int i=0;i<10;i++){
printf("%d ",a[i]);
}
return 0;
}
小结:主要学会如何去写Compare函数。