6-1 綜合成績排名-結構體一 (100 分)
眾所周知,計算機院要對申請轉入計算機大類的學生進行考核,考核方式包括機試和面試。學生綜合成績採取百分制,其中50%由機試成績核算,另50%由學生已獲得的加權成績核算。綜合成績優秀者可進入面試環節。現請你寫乙個根據學生成績來確定綜合成績排名的程式。
輸入: 第一行為乙個整數n(0輸出: 共n行,按綜合成績(機試成績加加權成績)從高到低每行輸出每個學生的資訊,如果綜合成績相同,則機試成績高的學生在前。每行的格式為:乙個字串(學生學號)加三個整數(4個資料之間均用乙個空格分隔),這三個整數依次為綜合成績,機試成績和加權成績,測試用例保證輸入合法且不存在成績完全相同的學生。
程式中用的結構體定義及各成員含義如下:
typedef struct
student;
程式中用到3個函式,分別為:
void swap(student * s1,student * s2) ;
其中引數s1,s2為指向兩個結構體的指標,其功能是將這兩個指標指向的結構體內的值互相交換。
int comp(student * s1,student * s2) ;
其中引數s1,s2為指向兩個結構體的指標,其功能是比較兩個結構體, 如果s1>s2則返回1,否則返回0。這裡s1>s2指的是s1的總分高,或者總分相同時指的是s1的機試成績高。測試用例保證輸入合法且不存在成績完全相同的學生。
void sort(student a,int size) ;
其中引數a為待排序的結構體陣列,size為陣列中學生的數量。其功能是將a按題目指定規則排序。
函式介面定義:
本題中大家只需實現第乙個函式,函式介面如下:
void swap(student * s1,student * s2) ;
裁判測試程式樣例:
函式被呼叫進行測試的例子如下:
#include
typedef struct
student;
void sort(student a,int size) ;
void swap(student * s1,student * s2) ;
int comp(student * s1,student * s2) ;
int main()
6 1 綜合成績排名 結構體一 100分
眾所周知,計算機院要對申請轉入計算機大類的學生進行考核,考核方式包括機試和面試。學生綜合成績採取百分制,其中50 由機試成績核算,另50 由學生已獲得的加權成績核算。綜合成績優秀者可進入面試環節。現請你寫乙個根據學生成績來確定綜合成績排名的程式。輸入 第一行為乙個整數n 0輸出 共n行,按綜合成績 ...
6 2 綜合成績排名 結構體二 100分
眾所周知,計算機院要對申請轉入計算機大類的學生進行考核,考核方式包括機試和面試。學生綜合成績採取百分制,其中50 由機試成績核算,另50 由學生已獲得的加權成績核算。綜合成績優秀者可進入面試環節。現請你寫乙個根據學生成績來確定綜合成績排名的程式。輸入 第一行為乙個整數n 0輸出 共n行,按綜合成績 ...
1004 成績排名(結構體)
讀入 n 0 名學生的姓名 學號 成績,分別輸出成績最高和成績最低學生的姓名和學號。輸入格式 每個測試輸入包含 1 個測試用例,格式為 第 1 行 正整數 n 第 2 行 第 1 個學生的姓名 學號 成績 第 3 行 第 2 個學生的姓名 學號 成績 第 n 1 行 第 n 個學生的姓名 學號 成績...