#include<stdio.h>
#include<string.h>
int main()
{
int n,m;
int i,k,j,h;
char a[20][1000];//a为准考证号
int b[1000],c[1000];//b为试机座位号,c为考试座位号
int d[1000];//d为需要查询的准考证号
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%s%d%d",a,&b[i],&c[i]);
}
scanf("%d",&m);
for(k=0;k<m;k++)
{
scanf("%d",&d[i]);
}
for(j=0;j<m;j++)
{
for(h=0;h<n;h++)//用双重循环一个个遍历给出得出试机座位号相等,从而找到考试座位
{
if(d[h]==b[h])
printf("%s %d",a[20][h],c[h]);
}
}
return 0;
}
修改处见注释,供参考:
#include<stdio.h>
#include<string.h>
int main()
{
int n,m;
int i,k,j,h;
char a[1000][17];//a为准考证号 a[20][1000]; 修改
int b[1000],c[1000];//b为试机座位号,c为考试座位号
int d[1000];//d为需要查询的准考证号
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%s%d%d",a[i],&b[i],&c[i]);//scanf("%s%d%d",a,&b[i],&c[i]); 修改
}
scanf("%d",&m);
for(k=0;k<m;k++)
{
scanf("%d",&d[k]); //scanf("%d",&d[i]); 修改
}
for(j=0;j<m;j++)
{
for(h=0;h<n;h++)//用双重循环一个个遍历给出得出试机座位号相等,从而找到考试座位
{
if(d[j]==b[h])//if(d[h]==b[h]) 修改
printf("%s %d\n",a[h],c[h]);//printf("%s %d",a[20][h],c[h]);修改
}
}
return 0;
}