7 82 通訊錄排序 20分

2021-10-11 11:45:23 字數 1275 閱讀 8469

輸入n個朋友的資訊,包括姓名、生日、**號碼,本題要求編寫程式,按照年齡從大到小的順序依次輸出通訊錄。題目保證所有人的生日均不相同。

輸入格式:

輸入第一行給出正整數n(<10)。隨後n行,每行按照「姓名 生日 **號碼」的格式給出一位朋友的資訊,其中「姓名」是長度不超過10的英文本母組成的字串,「生日」是yyyymmdd格式的日期,「**號碼」是不超過17位的數字及+、-組成的字串。

輸出格式:

按照年齡從大到小輸出朋友的資訊,格式同輸出。

輸入樣例:

3zhang 19850403 13912345678

wang 19821020 +86-0571-88018448

qian 19840619 13609876543

輸出樣例:

wang 19821020 +86-0571-88018448

qian 19840619 13609876543

zhang 19850403 13912345678

1:用乙個字串輸入zhang 19850403 13912345678這樣一串字元

a[1]=zhang

a[2]=19850403

…b[1]=…

b[2]=19840619

然後a[2]-b[2]>0或<0

但是不行,沒辦法輸入一大串字元,或者說沒辦法分開

2:將名字,**,生日分開輸入

[怎樣輸入乙個字串]:getchar()?

【怎麼排序】:乙個陣列記錄下標順序

結果來了!!!!!

結構體:

#include

struct fri ;

intmain()

}}for(k =

0;k)printf

("%s %ld %s\n"

,per[k]

.name,per[k]

.birth,per[k]

.tel)

;return0;

}

1:

用乙個字串輸入zhang 19850403 13912345678這樣一串字元

a[1]=zhang

a[2]=19850403

…b[1]=…

b[2]=19840619

然後a[2]-b[2]>0或<0

但是不行,沒辦法輸入一大串字元,或者說沒辦法分開

2:將名字,**,生日分開輸入

[怎樣輸入乙個字串]:getchar()?

【怎麼排序】:乙個陣列記錄下標順序

7 5 通訊錄排序(20 分)

輸入第一行給出正整數n 10 隨後n行,每行按照 姓名 生日 號碼 的格式給出一位朋友的資訊,其中 姓名 是長度不超過10的英文本母組成的字串,生日 是yyyymmdd格式的日期,號碼 是不超過17位的數字及 組成的字串。按照年齡從大到小輸出朋友的資訊,格式同輸出。3 zhang 19850403 ...

7 13 通訊錄排序 20分

輸入n個朋友的資訊,包括姓名 生日 號碼,本題要求編寫程式,按照年齡從大到小的順序依次輸出通訊錄。題目保證所有人的生日均不相同。輸入第一行給出正整數n 10 隨後n行,每行按照 姓名 生日 號碼 的格式給出一位朋友的資訊,其中 姓名 是長度不超過10的英文本母組成的字串,生日 是yyyymmdd格式...

7 25 通訊錄排序 20分

輸入n個朋友的資訊,包括姓名 生日 號碼,本題要求編寫程式,按照年齡從大到小的順序依次輸出通訊錄。題目保證所有人的生日均不相同。輸入第一行給出正整數n 10 隨後n行,每行按照 姓名 生日 號碼 的格式給出一位朋友的資訊,其中 姓名 是長度不超過10的英文本母組成的字串,生日 是yyyymmdd格式...