C++排序
void StudentManage::Sort() //排序功能
{
StudentInfo *h,*curr,*temp,*last;
h=head;
for(int j=0;j<n;j++)
{
curr=h;
for(int i=0;i<n-j;i++)
{
if(curr->sum < curr->NEXT->sum)
{
if(i==0) //换头指针为第二个节点
{
temp=h;
h=h->NEXT;
temp->NEXT=h->NEXT;
h->NEXT=temp;
curr=h->NEXT;
continue;
}
else
{
last=h;
for(int k=0;k<i-1;k++)
last=last->NEXT;
temp=curr;
curr=curr->NEXT;
temp->NEXT=curr->NEXT;
curr->NEXT=temp;
last->NEXT=curr;
}
curr=curr->NEXT;
}
}
}
cout<<"按成绩由大到小的排序功能已经完成!"<<endl;
}
好看请赞,养成习惯:) 本文来自博客园,作者:靠谱杨, 转载请注明原文链接:https://www.cnblogs.com/rainbow-1/p/13321831.html
欢迎来我的51CTO博客主页踩一踩 我的51CTO博客
文章中的公众号名称可能有误,请统一搜索:靠谱杨的秘密基地