桐桐的學校剛剛舉行了期中考試,桐桐所在的七年級一共考了五個科目:語文、數學、英語、政治和歷史。現在所有成績都已經出來,班主任找到了桐桐,想讓桐桐幫忙計算班裡所有同學的五科總成績,並按照總成績由高到低的順序排名,如果兩個學生盼總成績相同,則學號小的排在前面。你能夠編寫程式幫助桐桐完成任務嗎?
第1行:乙個數n(1≤n<100),表示桐桐所在班級的學生數;
第2行至第n+1行:第i行表示學號為i-1的學生的成績(全部是整數,範圍在o到1 00之間),每行有5個數,分別表示當前學生的五科成績,相鄰數之間用乙個空格隔開。
只有1行,按總成績由高到低的順序輸出對應學生的學號,相鄰學號間用乙個空格隔開。末尾也有空格
樣例輸入
589 76 80 67 90
70 80 78 95 92
65 77 88 98 100
82 68 99 87 69
100 92 87 79 90
樣例輸出
5 3 2 4 1
#include
#include
using
namespace std;
struct stu
;int
cmp(
const
void
*a,const
void
*b)//快速排序
void
input
(struct stu a,
int n)
}voids(
struct stu a,
int n)
qsort
(a,n,
sizeof
(stu)
,cmp)
;for
(i=0
;i1;i++)}
}}for(i=
0;iintmain()
不知道為什麼上圖cmp有時候失效 故使用下圖**
int
cmp(
const
void
*a,const
void
*b)
結構體結合qsort排序
qsort的標頭檔案是stdlib.h,noip允許使用這個標頭檔案 一 對int型別陣列排序 int num 100 例如 int cmp const void a const void b qsort num,100,sizeof num 0 cmp 二 對char型別陣列排序 同int型別 c...
qsort用於結構體陣列排序
用模擬的qsort進行解釋結構體陣列的排序 typedef struct stustu void swap void x,void y,int size int com const stu x,const stu y 傳進來的是陣列的地 void my qsort void base,int num...
qsort 快速排序
qsort函式是ansi c標準中提供的,其宣告在stdlib.h檔案中,是根據二分法寫的,其時間複雜度為n log n 其結構為 void qsort void base,size t nelem,size t width,int comp const void const void 其中 bas...