通訊錄排序(c )

2021-08-30 19:21:26 字數 1574 閱讀 9476

【問題描述】

建立乙個通訊錄的結構記錄,包括姓名、生日、**號碼。輸入n(n<10)個朋友的資訊,再按他們的年齡從大到小的順序依次輸出其資訊

【輸入形式】

先輸入朋友數n(整型,n<10),再依次輸入每個朋友的姓名(字串)、生日(整型)、和**號碼(字串)。

【輸入輸出樣例】

input n:3

input the name,birthday,number of the 1 friend:zhang 19850403 13912345678

input the name,birthday,number of the 2 friend:wang 19821020 0571-88018448

input the name,birthday,number of the 3 friend:qian 19840619 13609876543

wang□19821020□0571-88018448

qian□19840619□13609876543

zhang□19850403□13912345678

【樣例說明】

按朋友年齡從大到小的順序依次輸出每位朋友的資訊,內容與格式如下

姓名□生日□**號碼

%s□%d□%s

□表示空格

題目難點

1. 呼叫陣列做儲存

2. 陣列定義為string型,這樣就可以存放多個字母(如果用char型,就只能存放乙個字元)

#include 

using namespace std;

void

sort

(int

,string [

],string ,

int)

;//排序函式

intmain()

sort

(bir,name,tel,n)

;//呼叫排序函式

return0;

}void

sort

(int bir[

],string name[

],string tel,

int n)

for(

int i=

0;i++i)

cout<<<

" "<<<

" "<<}

c++中輸入一串字元的函式有多種:

(1)c標準函式,儲存字元到字元陣列中:

char str[100];

scanf("%s", str ) ; //讀入一串字元,不能包括空格

gets(str); //輸入一行字元,可以有空格,以回車鍵結束

(2)c++函式,可以儲存到字元陣列,也可以儲存到string類物件中:

string str;

cin >> str ; //讀入一串字元,不能包括空格

getline(cin,str ); //輸入一行字元,可以有空格,以回車鍵結束

通訊錄排序

這一題用了我之前從沒有嘗試用過的結構體,感覺還不錯。輸入n個朋友的資訊,包括姓名 生日 號碼,本題要求編寫程式,按照年齡從大到小的順序依次輸出通訊錄。題目保證所有人的生日均不相同。輸入格式 輸入第一行給出正整數n 10 隨後n行,每行按照 姓名 生日 號碼 的格式給出一位朋友的資訊,其中 姓名 是長...

通訊錄排序

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

iOS 通訊錄排序

在很多時候需要處理分組資訊 和 資料排序 按時間 字母 排序,類似通訊錄 如下圖 做這個 我的思路是用字典 這裡按字母abcd排序 首先把中文轉換成拼音,擷取第乙個字母 然後插入字典 字母作為key 並根據key對應的value建立為陣列,第二次取出字典中所有的key 判斷新的key是否在所有key...