#include<iostream>
#include<cstdio>
#include<cstring>
const int maxn=100005;
using namespace std;
struct node
{
char a[25],b[85];
} c[maxn];
int main()
{
int i,j,k=0;
int n;
char d[maxn];
while(scanf("%s",c[k].a)&&strcmp(c[k].a,"@END@")!=0&&getchar()&&gets(c[k].b))
{
k++;
}
scanf("%d",&n);
getchar();
while(n--)
{
memset(d,0,sizeof(d));
gets(d);
if(d[0]=='[')
{
for(i=0; i<k; i++)
{
if(strcmp(c[i].a,d)==0)
{
puts(c[i].b);
break;
}
}
if(i>=k)
{
printf("what?\n");
}
}
else
{
for(i=0; i<k; i++)
{
if(strcmp(c[i].b,d)==0)
{
for(j=1;c[i].a[j]!=']';j++)
printf("%c",c[i].a[j]);
printf("\n");
break;
}
}
if(i>=k)
{
printf("what?\n");
}
}
//return 0;
}
return 0;
#include<cstdio>
#include<cstring>
const int maxn=100005;
using namespace std;
struct node
{
char a[25],b[85];
} c[maxn];
int main()
{
int i,j,k=0;
int n;
char d[maxn];
while(scanf("%s",c[k].a)&&strcmp(c[k].a,"@END@")!=0&&getchar()&&gets(c[k].b))
{
k++;
}
scanf("%d",&n);
getchar();
while(n--)
{
memset(d,0,sizeof(d));
gets(d);
if(d[0]=='[')
{
for(i=0; i<k; i++)
{
if(strcmp(c[i].a,d)==0)
{
puts(c[i].b);
break;
}
}
if(i>=k)
{
printf("what?\n");
}
}
else
{
for(i=0; i<k; i++)
{
if(strcmp(c[i].b,d)==0)
{
for(j=1;c[i].a[j]!=']';j++)
printf("%c",c[i].a[j]);
printf("\n");
break;
}
}
if(i>=k)
{
printf("what?\n");
}
}
//return 0;
}
return 0;
}
我发现结构体真的作用很大!