整数奇偶排序题解
2026-03-18 16:48:01
发布于:浙江
36阅读
0回复
0点赞
学生版:
#include<bits/stdc++.h>
#include <functional>
using namespace std;
int a[11];
int b[11];
int main()
{
int x=1,y=1;
for(int i=1;i<=10;i++) {
int n;
cin>>n;
if(n%2==0) b[y++]=n;
else if(n%2!=0) a[x++]=n;
}
sort(a+1,a+x,greater<int>());
sort(b+1,b+y);
for(int i=1;i<x;i++) {
cout<<a[i]<<" ";
}
for(int i=1;i<y;i++) {
cout<<b[i]<<" ";
}
return 0;
}
老师版:
#include<bits/stdc++.h>
using namespace std;
int a[11];//记录奇数
int b[11];//记录偶数
int main(){
int x=1,y=1;//x记录奇数的个数,y记录偶数的个数
for(int i=1;i<=10;i++) {
int n;//输入的数
cin>>n;//判断奇偶
if(n%2==0) b[y++]=n;//偶数
//b[y]=n;
//y++;
else //奇数
if(n%2!=0) a[x++]=n;
//b[y]=n;
//x++;
}
//进行排序
//下标:a[10]:0 1 2 3...9
//下标:a[10]:1 2 3 4...10
//a[n];sort(a+1,a+10+1):默认是从小到大,其次我们排序的范围是[0,n]
sort(a+1,a+x,greater<int>());
sort(b+1,b+y);//输出
for(int i=1;i<x;i++) {
cout<<a[i]<<" ";
}
for(int i=1;i<y;i++) {
cout<<b[i]<<" ";
}
return 0;
}
这里空空如也







有帮助,赞一个