题目
题目链接
代码
#include <stdio.h>
#include <stdlib.h>
//自定义的结构体,用于存储每个学生的信息
struct inform{
//准考证号
char str[17];
//试机座位号
int num1;
//考试座位号
int num2;
};
int main()
{
typedef struct inform Inform;
//用户所输入的学生信息的个数
int N;
//用户输入的需要查询考试座位号的学生个数
int M;
//循环变量
int i = 0, j = 0;
//接收用户所输入的学生信息的个数
scanf("%d",&N);
//定义结构体数组,存储每个学生的详细信息
Inform student[N];
//通过循环依次录入每个学生的信息
for (i = 0; i < N; i++)
{
//接收该学生的准考证号
scanf("%s", student[i].str);
//接收该学生的试机座位号
scanf("%d", &student[i].num1);
//接收该学生的考试座位号
scanf("%d", &student[i].num2);
}
//接收用户输入的需要查询考试座位号的学生个数
scanf("%d", &M);
//用于接收用户输入的对应考生的待查询的试机座位号码的数组
int flags[M];
//依次对flags[M]赋值
for (i = 0; i < M; i++)
{
scanf("%d", &flags[i]);
}
//通过for循环的嵌套来查找该学生的准考证号和考试座位号
for (i = 0; i < M; i++)
{
for (j = 0; j < N; j++)
{
//判断是否为我们所需要查找的
if(student[j].num1 == flags[i]) {
//打印查找到的学生的准考证号和考试座位号,并且中间以空格隔开
printf("%s %d
", student[j].str,student[j].num2);
}
}
}
return 0;
}
运行结果