九度OJ 1069 尋找學生資訊 (類比),oj1069
題目1069:尋找學生資訊
時間限制:1 秒
記憶體限制:32 兆
特殊判題:否
提交:7836
解決:2116
-
題目描述:
-
輸入N個學生的資訊,然後進行查詢。
-
輸入:
-
輸入的第一行為N,即學生的個數(N<=1000)
接下來的N行包括N個學生的資訊,資訊格式如下:01 李江 男 2102 劉唐 男 2303 張軍 男 1904 王娜 女 19然後輸入一個M(M<=10000),接下來會有M行,代表M次查詢,每行輸入一個學號,格式如下:02030104
-
輸出:
-
輸出M行,每行包括一個對應於查詢的學生的資訊。
如果沒有對應的學生資訊,則輸出“No Answer!”
-
範例輸入:
-
401 李江 男 2102 劉唐 男 2303 張軍 男 1904 王娜 女 1950203010403
-
範例輸出:
-
02 劉唐 男 2303 張軍 男 1901 李江 男 2104 王娜 女 1903 張軍 男 19
#include<stdio.h>#include<string.h>typedef struct node{ char id[100]; char name[200]; char sex[10]; int age;}node;node data[1001];int main(int argc, char *argv[]){ int N; int M; while(~scanf("%d",&N)) { for(int i=0;i<N;++i) { scanf("%s%s%s%d",data[i].id,data[i].name,data[i].sex,&data[i].age); } scanf("%d",&M); char queryid[100]; int j; for(int i=0;i<M;++i) { scanf("%s",queryid); for(j=0;j<N;++j) { if(strcmp(data[j].id,queryid)==0) { printf("%s %s %s %d\n",data[j].id,data[j].name,data[j].sex,data[j].age); break; } } if(j==N) printf("No Answer!\n"); } } return 0;}