这个题目可以用到c++中的库函数map函数进行一对一的映射关系的建立,具体的关于map函数的用法,请见群共享。
#include<iostream>
#include<map>
#include<string>
using namespace std;
int main()
{
map<string,string> search;//定义一个map函数 search
char *a,*b;
char line[1001];
while(1)
{
gets(line);
if(strlen(line)==0)
break;
a=strtok(line," ");//进行字符串的分割
b=strtok(NULL," ");//进行字符串的分割
search[string(b)]=string(a);//对相应的字符串进行标记
}
string word;
while(cin>>word)
{
string result=search[word];//搜索单词
if(result=="")
result="eh";
cout<<result<<endl;
}
return 0;
}
本文介绍了一个编程挑战,使用C++中的map函数来实现一个简单的翻译程序。输入包含一个包含多达100,000个条目的字典,以及一段待翻译的外语文本。程序将外语文本翻译成英文,对于未出现在字典中的词汇,则统一翻译为“eh”。
1033





