定義乙個學生結構體型別student,包括4個字段,姓名、性別、年齡和成績。然後在主函式中定義乙個結構體陣列(長度不超過1000),並輸入每個元素的值,程式使用氣泡排序法將學生按照成績從小到大的順序排序,然後輸出排序的結果。
輸入格式:第一行是乙個整數n(n<1000),表示元素個數;接下來n行每行描述乙個元素,姓名、性別都是長度不超過20的字串,年齡和成績都是整型。
輸出格式:按成績從小到大輸出所有元素,若多個學生成績相同則成績相同的同學之間保留原來的輸入順序。
輸入:3
alice female 18 98
bob male 19 90
miller male 17 92
輸出:bob male 19 90
miller male 17 92
alice female 18 98
此題應該用結構體的兩級排序,先按成,再按輸入順序
//對結構體二級排序程式模板
struct in
s[100];
int cmp( const void *a , const void *b )//x的優先順序高於y
qsort(s,100,sizeof(s[0]),cmp);
具體**如下
#include#includeusing namespace std;
struct student
s[1001];
int cmp(const void *a,const void *b)
int main()
qsort(s,n,sizeof(s[0]),cmp);
for(int i=0;i
大整數排序(結構體二級排序)
對n個長度最長可達到1000的數進行排序。輸入描述 輸入第一行為乙個整數n,1 n 100 接下來的n行每行有乙個數,數的長度範圍為1 len 1000。每個數都是乙個正數,並且保證不包含字首零。輸出描述 可能有多組測試資料,對於每組資料,將給出的n個數從小到大進行排序,輸出排序後的結果,每個數占一...
程序頁表兩級結構 頁目錄和頁表頁
程序頁表的基本結構僅適合於小程序位址空間,在大位址空間下,該結構發生了變化。大虛址空間下的記憶體程序頁表結構採用頁表頁和頁目錄。32位意味著虛址空間可達4gb 虛址空間計算方法 32位的編址為232,232 210 210 210 22 4gb 1k 1024b 1m 1024k 1g 1024m ...
優先順序佇列 和 改變結構體 的排序規則
參考了 能站在巨人的肩膀上,也是一種本事!a b c d 從這裡出去 自己瞎猜的,這個 釋了 雖然是用小於號 排序,但是大的先出來。接下來 定義4中情況的 優先順序佇列 1,int 型別,降序 include includeusing namespace std priority queue q i...