用一維陣列儲存學號和成績,然後,按成績排序輸出。
輸入第一行包括乙個整數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...