今天在看《C++primer》的时候书上有一道例子,于是就自己实现了一遍。

例子的名称叫做单词转换,使用了map对象,难度并不大。

实现思路:

先把单词都存到一个文件里面,文件名叫dictionary.txt。

然后代码如下:

#include<iostream>
#include<string>
#include<map>
#include<sstream>
#include<fstream>
using namespace std;
void init(map<string, string> &word_change)
{
 string str;
 string front,last;
 ifstream ifs("dictionary.txt");
 while(ifs>>front>>last)
  word_change.insert(make_pair(front,last));
}
void main()
{
 string str,temp,changed="";
 map<string,string> word_change;
 init(word_change);
 getline(cin,str);
 stringstream ss(str);
 while(!ss.eof())
 {
  ss.clear();
  ss >>temp;
  if(word_change.count(temp))
   temp = word_change[temp];
  changed+=temp+" ";
 }
 cout<<changed<<endl;
 system("pause");
}

我在查找单词的时候用的是count函数,也可以用find函数。

拓展:我觉得用类似的方法可以实现英语词典,不过当数据量很大时,查找算法效率不是很高。

C++ 单词转换例子相关推荐

  1. 单词转换(map对象)

    2019独角兽企业重金招聘Python工程师标准>>> 结果: ./trans file1 file2 no I said thanks because I was supposed ...

  2. [转]jackson json字符串、map、java对象的转换例子

    ackson框架 json字符串.map.java对象的转换例子 先下载框架jar包: 下面是一些例子: package jackson; import java.io.File; import ja ...

  3. TLC2543芯片AD转换例子

    /**//*     TLC2543芯片AD转换例子,采集第2通道AIN2的电压数据,并通过串口发送转换结果     发送格式为:"转换结果,毫伏数值".每隔150ms闪亮LED灯 ...

  4. c++ demo: 单词转换

    程序功能为:给定一个string,将它转换成为另一个string.程序的输入是两个文件,第一个文件保存一些规则,用来转换第二个文件的文本.每条规则由两部分组成:一个可能出现在输入文本中的单词和一个用来 ...

  5. python里transmap_c++学习笔记-map的使用实例(单词转换)

    c++中的map是关联容器,以key-value的形式存储数据,类似于java中的Map类型和python中的dict.key不能重复,并能通过下标的形式(map[key])返回value,因此也被称 ...

  6. 程序员面试金典 - 面试题 17.22. 单词转换(BFS)

    1. 题目 给定字典中的两个词,长度相等. 写一个方法,把一个词转换成另一个词, 但是一次只能改变一个字符. 每一步得到的新词都必须能在字典中找到. 编写一个程序,返回一个可能的转换序列.如有多个可能 ...

  7. c语言强制转换例子,关于强制类型转换(c语言)(示例代码)

    因为今天看的代码中用到了结构体的强制类型转换,就很想了解一下结构体的强制类型转换是怎样的. 一个结构体如下: 在下面这段代码中rbuf->reqCmdBuf是一个空指针,首先将这个空指针赋值给一 ...

  8. mysql行列转换例子_mysql行列转换示例

    现把转换方法列举如下: 1.纵表转横表: 纵表结构 TableA Name Course Grade 张三 语文 75 张三 数学 80 张三 英语 90 李四 语文 95 李四 数学 55 横表结构 ...

  9. 信息学奥赛C++语言:单词转换

    [题目描述] 输入一个1-10之间的数,输出其对应的英文单词. [输入] 一行一个正整数n, 其中1<=n<=10. [输出] 输出一行一个英文单词,显示输入数字的英文单词,要求首字母大写 ...

最新文章

  1. 使用思维导图编写测试用例
  2. valid floating point value什么意思_每个位置的球员,都在干些什么
  3. 成功解决ModuleNotFoundError: No module named 'torchvision.ops'
  4. mariadb mysql 5.7_MariaDB 10.1 和 MySQL 5.7 在普通商用硬件上的表现
  5. bread是可数还是不可数_英语语法丨可数名词和不可数名词讲解(上),学英语必学...
  6. 将下图的nfa确定化为dfa_实战技术利用AutoCAD确定PCB板型
  7. atitit.自适应设计悬浮图片的大小and 位置
  8. python中的作用域_python中作用域
  9. Axure 基础控件(1-49)
  10. vs2010和matlab混合编程,VS2010与Matlab2010b混合编程
  11. matlab qpsk 星座图,QPSK误码率和星座图MATLAB仿真
  12. 快捷方式右键菜单、任务管理器等,使用“打开文件所在位置”出现“该文件没有与之关联的应用来执行该操作”的问题解决方案
  13. 实战Go内存泄露【转】
  14. UIUC计算机科学系博士,PhD捷报|计算机博士全美TOP5!清华首批UIUC CS PhD全奖!恭喜Nuts清华学员!...
  15. 【小技巧】酒店Wifi不弹出登陆方案(Mac)
  16. 标定学习笔记(九)-- 利用空间正交约束的相机自标定和三维重建
  17. 西安电子科技大学计算机研究生寝室,西安电子科技大学硕士宿舍身亡 生前说自己累...
  18. C#导入导出Excel和Excel与XML的相互转换
  19. LeetCode 603.连续空余座位
  20. 【原创】】巴鲁夫 IO-Link模块的使用方法

热门文章

  1. 【软件下载】换新电脑记录下下载的软件时所需地址
  2. Keepalived源码、yum安装-高可用(主备、主主)场景
  3. Windows PE研究
  4. 2020年的发展,想转行学前端还是后端好
  5. Jpeg文件格式转换成bmp文件格式
  6. 标准C++之运算符重载和虚表指针
  7. 图片显示上下有空白的解决办法
  8. STL 常用容器的底层数据结构实现
  9. 图解LeetCode——854. 相似度为 K 的字符串(难度:困难)
  10. 关于Spring容器中定时器到时执行会出现两个线程同时执行的问题