关于字符串的,还是c++好用。
#include<iostream>
#include<string>
#include<map>
using namespace std;
map<string,string>m1;
map<string,string>m2;
int main()
{
char s[120];
string a,b,c;
int n,i;
while(gets(s),strcmp(s,"@END@")!=0)
{
c=s;
i=c.find(']');
a=c.substr(0,i+1);
b=c.substr(i+2);
m1[a]=b;
m2[b]=a;
}
scanf("%d%*c",&n);
while(n--)
{
gets(s);
if (s[0] == '[')
{
a = m1[s];
if (a == "") printf("what?\n");
else printf("%s\n", a.c_str());
}
else
{
a = m2[s];
if (a == "") printf("what?\n");
else printf("%s\n", a.substr(1, a.length() - 2).c_str());
}
}
return 0;
}