题目大意:就是构建一个字典,用来查询单词。
阶梯思路:用stl map,用来一一对应单词。然后string可能不支持printf,之前一直都错在这里。然后前面输入的需要注意一下,接受空行用gets和s【0】 == ‘\0’结合判断。
#include<iostream> #include<stdio.h> #include<map> #include<string> using namespace std; map<string, string> vis; map<string, string>::iterator it; char s[30]; int main() { char s1[20], s2[20]; while (gets(s) != NULL && s[0] != ‘\0‘) { sscanf(s, "%s%s", s1, s2); vis[s2] = s1; } while (scanf("%s", s) == 1) { it = vis.find(s); if (it != vis.end()) cout<< vis[s]<<endl; else printf("eh\n"); } return 0; }
10282 - Babelfish(stl map),布布扣,bubuko.com
原文:http://blog.csdn.net/u012997373/article/details/22689243