輸入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
解題思路:
在建立的結構體內,將姓名,**,生日都以char 陣列的形式儲存,要求以年齡從大到小輸出通訊錄,理解為按生日字典序從小到大輸出通訊錄。
在輸入通訊錄後,額外建立兩個int陣列b,c來實現排序記錄。在個人部落格中,有一題習題8-7 字串排序 採用同樣的方法實現,有興趣可以看一下。
**如下:
ps:在網上查了下,發現還可以直接設定臨時結構變數,對變數陣列進行氣泡排序等方法進行排序,氣泡排序例項**如下:#include
#include
struct phonep[20]
;int
main()
,c[10];
scanf
("%d"
,&n)
;for
(i=0
;i)for
(i=0
;iflag=0;
for(j=
0;j) c[i]
=temp;
b[temp]=1
;}for(i=
0;i)return0;
}
#include
#include
#include
struct phonep[20]
;int
main()
for(i=
0;i1;i++)}
}for
(i=0
;i)return0;
}
習題9 5 通訊錄排序 20分
進博主技術群,與大佬交流,領取乾貨學習資料 快速找到所需題目 浙大版c語言程式設計第三版題目集一覽表 輸入n個朋友的資訊,包括姓名 生日 號碼,本題要求編寫程式,按照年齡從大到小的順序依次輸出通訊錄。題目保證所有人的生日均不相同。輸入格式 輸入第一行給出正整數n 10 隨後n行,每行按照 姓名 生日...
習題9 5 通訊錄排序 20分
輸入n個朋友的資訊,包括姓名 生日 號碼,本題要求編寫程式,按照年齡從大到小的順序依次輸出通訊錄。題目保證所有人的生日均不相同。輸入第一行給出正整數n 10 隨後n行,每行按照 姓名 生日 號碼 的格式給出一位朋友的資訊,其中 姓名 是長度不超過10的英文本母組成的字串,生日 是yyyymmdd格式...
習題9 5 通訊錄排序 20分
輸入第一行給出正整數n 10 隨後n行,每行按照 姓名 生日 號碼 的格式給出一位朋友的資訊,其中 姓名 是長度不超過10的英文本母組成的字串,生日 是yyyymmdd格式的日期,號碼 是不超過17位的數字及 組成的字串。按照年齡從大到小輸出朋友的資訊,格式同輸出。3 zhang 19850403 ...