博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
英文文章
阅读量:6533 次
发布时间:2019-06-24

本文共 2907 字,大约阅读时间需要 9 分钟。

对任意一篇英文文章,统计其中每个单词分别出现了多少次,并可替换指定的单词。

【功能要求】
(1)英文文章以文件形式输入。
(2)统计结果保存为文件。
(3)对单词进行替换时,允许用户选择全部替换,或逐个替换。替换完成后,将文章存盘。

1 #include
2 #include
3 #include
4 #include
5 #include
6 using namespace std; 7 8 const int Num = 1000;//文章不同单词的最大数目 9 int num_word = 0;//单词的个数 10 vector
array_s;//存放文章里面的单词 11 vector
all_content;//存放文章所有的内容 12 struct Data{ 13 string data;//单词 14 int count;//单词在文章出现的次数 15 }; 16 17 Data WordNum[Num];//存放单词以及单词出现的次数 18 19 20 //判断是否是字母 21 //是字母返回true,否则返回false 22 bool IsLetter(char ch){ 23 if(((ch>='a')&&(ch<='z'))||((ch>='A')&&(ch<='Z'))){ 24 return true; 25 }else return false; 26 } 27 28 //进行统计各个单词出现的次数 29 void analyse(ifstream &in) 30 { 31 int i; 32 bool flags;//标志,是否为新的单词 33 string s="";//初始字符串s为空 34 char ch;//字符 35 string temp;//字符串 36 37 while((in.get(ch)))//从文件内读取字符串 38 { 39 if(IsLetter(ch)){ //单词的处理 40 s=""; 41 while(IsLetter(ch))//如果当前字符是字母继续读取 42 { 43 s+=ch; 44 in.get(ch); 45 } 46 in.seekg(-1,ios::cur);//文件指针(光标)后退一个字节 47 array_s.push_back(s);//读到的单词存到array_s数组中 48 all_content.push_back(s);//读到的单词存到all_content数组中 49 50 flags = true; 51 for(i=0;i
>str;155 out.open("D:/resultupdate.txt");//将某些关键词替换后的字符串存到文件中156 157 if(out.is_open())158 {159 for(i=0;i
>str2;167 out<

 

1 #include
2 #include
3 #include
4 #include
5 #include
6 using namespace std; 7 8 const int Num = 1000;//文章不同单词的最大数目 9 int num_word = 0;//单词的个数 10 vector
array_s;//存放文章里面的单词 11 vector
all_content;//存放文章所有的内容 12 struct Data{ 13 string data;//单词 14 int count;//单词在文章出现的次数 15 }; 16 17 Data WordNum[Num];//存放单词以及单词出现的次数 18 19 20 //判断是否是字母 21 //是字母返回true,否则返回false 22 bool IsLetter(char ch){ 23 if(((ch>='a')&&(ch<='z'))||((ch>='A')&&(ch<='Z'))){ 24 return true; 25 }else return false; 26 } 27 28 //进行统计各个单词出现的次数 29 void analyse(FILE *fp) 30 { 31 int i; 32 bool flags;//标志,是否为新的单词 33 string s="";//初始字符串s为空 34 char ch;//字符 35 string temp;//字符串 36 37 while((ch = fgetc(fp))!=EOF)//从文件内读取字符 38 { 39 40 if(IsLetter(ch)){ //单词的处理 41 s=""; 42 while(IsLetter(ch))//如果当前字符是字母继续读取 43 { 44 s+=ch; 45 ch = fgetc(fp); 46 } 47 fseek(fp,-1L,1); 48 // in.seekg(-1,ios::cur);//文件指针(光标)后退一个字节 49 array_s.push_back(s);//读到的单词存到array_s数组中 50 all_content.push_back(s);//读到的单词存到all_content数组中 51 52 flags = true; 53 for(i=0;i
>str;167 if((fp=fopen("D:/resultupdate.txt","w+"))==NULL)//将某些关键词替换后的字符串存到文件中168 {169 printf("文件不存在\n");170 171 }else{172 for(i=0;i
>str2;180 fprintf(fp,"%s",str2);//单词存入文件181 all_content[i]=str2;182 }else{183 fprintf(fp,"%s",all_content[i].c_str());//单词存入文件184 }185 }186 fclose(fp);187 printf("文章替换成功!\n\n");188 }189 }190 191 //string filelast="";192 193 //把原文件存放到字符串中194 for(i=0;i

 

转载于:https://www.cnblogs.com/minmsy/p/5079394.html

你可能感兴趣的文章
《Linux从入门到精通(第2版)》——导读
查看>>
路过下载攻击利用旧版 Android 漏洞安装勒索软件
查看>>
ThinkSNS 六大子版本体验及源码下载
查看>>
《算法基础》——1.5实际因素
查看>>
《Java数字图像处理:编程技巧与应用实践》——第3章 基本Swing UI组件与图像显示 3.1 JPanel组件与BufferedImage对象的显示...
查看>>
为什么有人讨厌 Google 的新 Logo?
查看>>
2022 年 AI 会发展成什么样子,IBM 做出了 5 大预测
查看>>
腾讯2017暑期实习编程题3
查看>>
整理收藏一份PHP高级工程师的笔试题
查看>>
Intellij IDEA 构建Spring Web项目 — 用户登录功能
查看>>
[AHOI2013]作业
查看>>
[bzoj 4241]历史研究
查看>>
git push被忽略的文件 处理
查看>>
C#中用ILMerge将所有引用的DLL打成一个DLL文件
查看>>
PHP生成HTML静态页面
查看>>
服务器启动django
查看>>
Makefile 中:= ?= += =的区别【转】
查看>>
使用makecontext实现用户线程【转】
查看>>
Comet:基于 HTTP 长连接的“服务器推”技术
查看>>
BZOJ 2733: [HNOI2012]永无乡 启发式合并treap
查看>>