首页 > 代码库 > 九度OJ 1069 查找学生信息 (模拟)

九度OJ 1069 查找学生信息 (模拟)

题目1069:查找学生信息

时间限制:1 秒

内存限制:32 兆

特殊判题:

提交:7836

解决:2116

题目描述:

 输入N个学生的信息,然后进行查询。

输入:

 输入的第一行为N,即学生的个数(N<=1000)

接下来的N行包括N个学生的信息,信息格式如下:
01 李江 男 21
02 刘唐 男 23
03 张军 男 19
04 王娜 女 19
然后输入一个M(M<=10000),接下来会有M行,代表M次查询,每行输入一个学号,格式如下:
02
03
01
04
输出:

 输出M行,每行包括一个对应于查询的学生的信息。

如果没有对应的学生信息,则输出“No Answer!”
样例输入:
4
01 李江 男 21
02 刘唐 男 23
03 张军 男 19
04 王娜 女 19
5
02
03
01
04
03
样例输出:
02 刘唐 男 23
03 张军 男 19
01 李江 男 21
04 王娜 女 19
03 张军 男 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;
}



九度OJ 1069 查找学生信息 (模拟)