用C++的sort函数对结构体排序2
1 #include <iostream> 2 #include <algorithm> 3 using namespace std; 4 struct team 5 { 6 int a; 7 int b; 8 }t[10]; 9 bool cmp(team a, team b) 10 { 11 if(a.a==b.a) 12 return a.b > b.b;//如果第一个数相等,按第二个数从大到小排序。 13 else return a.a > b.a;//如果第一个数不相等,按第一个数从大到小排序。 14 } 15 bool big(int a, int b) 16 { 17 return a > b; 18 } 19 int main() 20 { 21 int i, n; 22 cin>>n; 23 for(i = 0; i < n; i++) 24 cin>>t[i].a>>t[i].b; 25 sort(t,t+n,cmp); 26 for(i = 0; i < n; i++) 27 cout<<t[i].a<<" "<<t[i].b<<endl; 28 return 0; 29 }