结构体快速排序(qsort)

您所在的位置:网站首页 学生按成绩由高到低排序输出 结构体快速排序(qsort)

结构体快速排序(qsort)

2023-08-08 13:59| 来源: 网络整理| 查看: 265

桐桐的学校刚刚举行了期中考试,桐桐所在的七年级一共考了五个科目:语文、数学、英语、政治和历史。现在所有成绩都已经出来,班主任找到了桐桐,想让桐桐帮忙计算班里所有同学的五科总成绩,并按照总成绩由高到低的顺序排名,如果两个学生盼总成绩相同,则学号小的排在前面。你能够编写程序帮助桐桐完成任务吗? 第1行:一个数n(1≤n stu*p1=(stu*)a; stu*p2=(stu*)b; return p1->sumsum; }//快速排序 void Input(struct stu a[],int n) { int i; for (i=0;i int i,j; struct stu b; for (i=0;i for (j=0;j if (a[j].num>a[j+1].num) { b.num=a[j+1].num; a[j+1].num=a[j].num; a[j].num=b.num; } } } } for (i=0;i int n; struct stu a[105]; scanf("%d",&n); Input(a,n); s(a,n); return 0; }

不知道为什么上图cmp有时候失效 故使用下图代码

int cmp(const void *a,const void *b) { return ((struct stu *)b)->sum-((struct stu *)a)->sum; }


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3