名人说:故立志者,为学之心也;为学者,立志之事也。—— 王阳明
进度:C/C++语言100题练习计划专栏,目前79/100
🥇C/C++语言100题练习专栏计划:目的:巩固练习C/C++语言,增强上机、动手实践能力,交流学习!
Problem Description
给定10个整数的序列,要求对其重新排序。排序要求:1.奇数在前,偶数在后;2.奇数按从大到小排序;3.偶数按从小到大排序。
Input
输入一行,包含10个整数,彼此以一个空格分开,每个整数的范围是大于等于0,小于等于100。
Output
按照要求排序后输出一行,包含排序后的10个整数,数与数之间以一个空格分开。
Sample Input
4 7 3 13 11 12 0 47 34 98
Sample Output
47 13 11 7 3 0 4 12 34 98
★提示:
对于100%的数据:n<10000
#include
#include
using namespace std;
int main()
{
int a[101],b[101],m=0,n=0;
//循环输入十个数
for(int i=0;i<10;i++){
int x;
cin>>x;
//如果是偶数则赋值给数组a里的元素 即存入数组a中
if(x%2==0){
a[m++]=x;
}
//如果是奇数则赋值给数组b里的元素 即存入数组b中
else
b[n++]=x;
}
//对偶数数组a进行排序
sort(a,a+m);
//对奇数数组b进行排序
sort(b,b+n);
//根据要求奇数在前,偶数在后
//从大到小输出奇数序列
for(int i=n-1;i>=0;i--){
cout<<b[i]<<" ";
}
//从小到大输出偶数序列
for(int i=0;i<m;i++){
cout<<a[i]<<" ";
}
cout<<endl;
return 0;
}
★关于sort:
sort函数包含在头文件为#include的c++标准库中,是c++一种排序方法之一。
1️⃣sort函数使用模板
sort(start,end+1,排序方法)
a.从小到大排序:sort(a,a+d)
b.从大到小排序:sort(a,a+d,cmp)
其中d等于要排序的元素的个数。
2️⃣cmp函数
bool cmp(int a,int b)
{
return a>b;
}
3️⃣sort函数的三个参数
①第一个是要排序的数组的起始地址;
②第二个是结束的地址+1(最后一位要排序的地址+1);
③第三个参数是排序的方法,可以是从大到小也可是从小到大;
还可以不写第三个参数,此时默认的排序方法是从小到大排序。
4 7 3 13 11 12 0 47 34 98
47 13 11 7 3 0 4 12 34 98
--------------------------------
Process exited after 2.08 seconds with return value 0
请按任意键继续. . .
Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder)
如果对大家有帮助的话,希望大家能多多点赞+关注!这样我动力会更足哦! ღ( ´・ᴗ・` )比心