map的应用。首先输入一个字典,字典格式为“英语à外语”的一一映射关系。,然后输入若干个外语单词,输出他们的 英语翻译单词,如果字典中不存在这个单词,则输出“eh”。总体来说就是用map这个数据结构,还有是本题中输入中的一些技巧,运用c的getchar()巧妙针对各个操作,进行相应的处理。
#include <iostream>
#include <stdio.h>
#include <string>
#include <map>
using namespace std;
int main()
{
char english[12],foreign[12];
map<string,string> translate;
map<string,bool> visit;
char t;
while(true)
{
if((t = getchar()) == '\n') break;
else
{english[0] = t;
int i = 1;
while(true)
{
t = getchar();
if(t == ' ') {english[i] = '\0';break;}
else english[i ++] = t;
}
cin >> foreign; getchar();
translate[foreign] = english;
visit[foreign] = true;
}
}
while(cin >> foreign)
{
if(visit[foreign]) cout << translate[foreign] << endl;
else cout << "eh" << endl;
}
return 0;
}