#include <bits/stdc++.h>
using namespace std;
bool cmp (int a,int b) //cmp 是比较的意思
{
return a>b;
}
int main()
{
int a[5]={1,2,3,4,5};
// sort(a,a+5) ; //左闭右开
// for(int i=0;i<5;i++) cout<<a[i];
//输出结果是 12345 默认是从小到大
//如果想从大到小,就需要自己加入一个比较函数
sort(a,a+5,cmp) ; //左闭右开
for(int i=0;i<5;i++) cout<<a[i];
}
//sort函数最重要的是结构体中成绩比较按照排名的顺序
//三名同学按照语文成绩从大到小排序,如果语文相同,数学高的在前面
#include <bits/stdc++.h>
using namespace std;
struct students {
string name;
int Chinese, Math ,English;
} a[4];
bool cmp (students a,students b)
{
if(a.Chinese>b.Chinese)return 1; //从大到小排序
else if (a.Chinese==b.Chinese)
return a.Math>b.Math ;
else
return 0;
}
int main()
{
//对结构体进行初始化
struct students a[4]={ {"小红",100,100,100} ,{"小蓝",90,80,100} ,{"小白",90,100,100} } ;
sort(a,a+3,cmp) ; //左闭右开
for(int i=0;i<3;i++)
cout<<a[i].name<<" "<<a[i].Chinese<<" "<<a[i].Math<<" "<<a[i].English<<" ";
return 0;
}