題目:
通訊錄中的一條記錄包含下述基本信息:朋友的姓名、出生日期缠借、性別干毅、固定電話號(hào)碼、移動(dòng)電話號(hào)碼泼返。 本題要求編寫程序硝逢,錄入NN條記錄,并且根據(jù)要求顯示任意某條記錄绅喉。
輸入格式:
輸入在第一行給出正整數(shù)NN(\le≤10)渠鸽;隨后NN行,每行按照格式姓名 生日 性別 固話 手機(jī)給出一條記錄柴罐。其中姓名是不超過10個(gè)字符徽缚、不包含空格的非空字符串;生日按yyyy/mm/dd的格式給出年月日革屠;性別用M表示“男”凿试、F表示“女”;固話和手機(jī)均為不超過15位的連續(xù)數(shù)字似芝,前面有可能出現(xiàn)+那婉。
在通訊錄記錄輸入完成后,最后一行給出正整數(shù)KK国觉,并且隨后給出KK個(gè)整數(shù)吧恃,表示要查詢的記錄編號(hào)(從0到N-1N?1順序編號(hào))。數(shù)字間以空格分隔麻诀。
輸出格式:
對(duì)每一條要查詢的記錄編號(hào)痕寓,在一行中按照姓名 固話 手機(jī) 性別 生日的格式輸出該記錄。若要查詢的記錄不存在蝇闭,則輸出Not Found呻率。
輸入樣例:
3
Chris 1984/03/10 F +86181779452 13707010007
LaoLao 1967/11/30 F 057187951100 +8618618623333
QiaoLin 1980/01/01 M 84172333 10086
2 1 7
輸出樣例:
LaoLao 057187951100 +8618618623333 F 1967/11/30
Not Found
思路:這題比較簡單就直接讀入然后輸出就可以了。
C語言代碼:
#include <stdio.h>
typedef struct {
// 注意數(shù)組要足夠大
char name[11];
char birth[20];
char sex;
char sta[17];
char mobile[17];
} book;
int main(void)
{
int n, k, idx;
scanf("%d", &n);
book lis[11];
int i;
// 讀入
for (i=0; i<n; i++){
scanf("%s %s %c %s %s", &lis[i].name, &lis[i].birth, &lis[i].sex, &lis[i].sta, &lis[i].mobile);
}
// 按要求輸出
scanf("%d", &k);
for (i=0; i<k; i++){
scanf("%d", &idx);
if (-1 < idx && idx < n){ // 0 ~ n-1
printf("%s %s %s %c %s\n", lis[idx].name, lis[idx].sta, lis[idx].mobile, lis[idx].sex, lis[idx].birth);
} else {
printf("Not Found\n");
}
}
return 0;
}
通訊簿.jpg