件名の説明:
同じ結果は、名前のアルファベット順にソートされた場合、名前は同じ年齢によってアルファベット順に並べ替え、および注文後の出力Nの学生であればNの生徒データは、生徒の成績データのレベルに応じてソートされます提供しています
サンプル入力:
3
ABC 20 99
BCD 19 97
ベッド20 97
出力例:
BCD 19 97
ベッド20 97
ABC 20 99
書式#include <stdio.hに> する#include <アルゴリズム> 書式#include < 文字列の.h> 使用して 名前空間はstdを、 構造体E { チャー名[ 100 ]。 int型の年齢; int型のスコア。 } BUF [ 1000年]。 ブールCMP(E AとE b)は { もし(!a.score = b.score)戻り a.score < b.score。 INT TMP = のstrcmp(a.name、b.name)。 場合(!TMP = 0)を返す TMP < 0 。 それ以外の 戻り a.age < b.age。 } int型のmain() { int型のn; しばらく(scanf関数(" %d個"、&N)!= EOF) { 以下のために(int型 i = 0 ; iがn <; iは++ ) { scanf関数(" %sの%D%D "、BUF [I] .nameの、&BUF [i]は.age、&BUF [I] .score)。 } ソート(BUF、BUF + N、CMP)。 以下のために(int型 i = 0 ; iがn <; iは++ ) { printf(" %sの%D%D \ n " 、BUF [I] .nameの、BUF [i]は.age、BUF [I] .score)。 } } リターン 0 ; }