希望看到此讨论的人不要在发此题的问题了
用sort(不是稳定的排序)做的建议学习以下代码
srtuct student{int ...,ind,sum;}; bool cmp(student x,student y){ if(x.sum==y.sum)return x.ind<y.ind; else return x.sum>y.sum; } int main(){ ... for(int i=1;i<=n;i++)a[i].ind=i; sort(a+1,a+1+n,cmp); }