成績排序 sort與qsort的使用

2021-10-05 07:52:03 字數 676 閱讀 7590

用一維陣列儲存學號和成績,然後,按成績排序輸出。

輸入第一行包括乙個整數n(1<=n<=100),代表學生的個數。

接下來的n行每行包括兩個整數p和q,分別代表每個學生的學號和成績。

按照學生的成績從小到大進行排序,並將排序後的學生資訊列印出來。

如果學生的成績相同,則按照學號的大小進行從小到大排序。

示例1

3

1 90

2 87

3 92

2 87

1 90

3 92

1.用c中的qsort方法

#include#include#includetypedef struct studentstudent;

int cmp(const void *a,const void *b)student;

bool cmp(student x,student y){ //返回bool型別

if(x.grade!=y.grade)

return x.grade3.自己寫排序演算法(我就會寫排序演算法了)

看zzulioj裡面的結構體專題 

tips:使用庫函式時,注意兩者返回值不同,而決定兩者位置是否交換也不同。上述已經寫了。

sort與qsort排序方法整理

qsort排序 一 對int型別陣列排序 int num 100 sample int cmp const void a const void b qsort num,100,sizeof num 0 cmp 二 對char型別陣列排序 同int型別 char word 100 sample int...

C 排序函式(sort與qsort)的應用

msdn中的定義 templatevoid sort ranit first,ranit last 1 templatevoid sort ranit first,ranit last,pred pr 2 標頭檔案 include using namespace std 1.預設的sort函式是按公...

qsort與sort的區別

qsort有四個引數,必須都有,而且返回值大於0則交換,小於等於0則不動.這點跟布林型不一樣,而sort返回值就是嚴格的布林型,不過為真就是不交換,為假則交換.所以兩者不同,當然兩者還有其他不同,但是大家應該知道,所以不一一枚舉,要注意的就是這兩者的返回值是不一樣的.親測有效.include inc...