0
已解决
何冯成
中级光能
中级光能
#include<bits/stdc++.h>
using namespace std;
struct zf{
string s;
int y,m,d;
}w[100];
bool cmp(zf x,zf z){
if(x.y!=z.y){
return x.y>z.y;
}
else if(x.m!=z.m){
return x.m>z.m;
}
else{
return x.d>z.d;
}
}
int main()
{
int n;
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>w[i].s>>w[i].y>>w[i].m>>w[i].d;
}
sort(w+1,w+n+1,cmp);
for(int i=1;i<=n;i++)
{
cout<<w[i].s<<endl;
}
return 0;
}
何冯成在2020-01-28 15:01:45追加了内容
哪错了
何冯成在2020-01-28 15:03:02追加了内容
0
已采纳
周浩然
初级守护
初级守护
我学过了,我来告诉你:
你得定义一个 变量来存储每一个姓名对应的编号,这样就能通过学生输入先后顺序来排序,你就少了这个:
bool cmp(... x , ... y){
............................
............................
.............................
return x.flag < y.flag;
}
0
0
0
0
0