題目1061 成績排序

2021-06-21 00:24:48 字數 667 閱讀 6238

題目描述:有n個學生的資料,將學生資料按成績高低排序,如果成績相同則按姓名字元的字母序排序,如果姓名的字母序也相同則按照學生的年齡排序,並輸出n個學生排序後的資訊。

輸入:測試資料有多組,每組輸入第一行有乙個整數n(n<=1000),接下來的n行包括n個學生的資料。

每個學生的資料報括姓名(長度不超過100的字串)、年齡(整形數)、成績(小於等於100的正數)。

輸出:將學生資訊按成績進行排序,成績相同的則按姓名的字母序進行排序。

然後輸出學生資訊,按照如下格式:

姓名 年齡 成績**:

#include#include#include#define max 1005

typedef struct

student;

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

int main()

qsort(s,n,sizeof(s[0]),cmp);

for(int i = 0;i < n;i++)

printf("%s %d %d\n",s[i].name,s[i].age,s[i].grade);

}}

題目1061 成績排序

題目描述 有n個學生的資料,將學生資料按成績高低排序,如果成績相同則按姓名字元的字母序排序,如果姓名的字母序也相同則按照學生的年齡排序,並輸出n個學生排序後的資訊。輸入 測試資料有多組,每組輸入第一行有乙個整數n n 1000 接下來的n行包括n個學生的資料。每個學生的資料報括姓名 長度不超過100...

題目1061 成績排序

題目描述 有n個學生的資料,將學生資料按成績高低排序,如果成績相同則按姓名字元的字母序排序,如果姓名的字母序也相同則按照學生的年齡排序,並輸出n個學生排序後的資訊。輸入 測試資料有多組,每組輸入第一行有乙個整數n n 1000 接下來的n行包括n個學生的資料。每個學生的資料報括姓名 長度不超過100...

1061 成績排序

題目描述 有n個學生的資料,將學生資料按成績高低排序,如果成績相同則按姓名字元的字母序排序,如果姓名的字母序也相同則按照學生的年齡排序,並輸出n個學生排序後的資訊。輸入 測試資料有多組,每組輸入第一行有乙個整數n n 1000 接下來的n行包括n個學生的資料。每個學生的資料報括姓名 長度不超過100...