博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第三次作业 词频统计
阅读量:5103 次
发布时间:2019-06-13

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

#include <iostream>

#include <string>
using namespace std;
struct Word
{ string Str;
int Count;
};
void CalcCount(Word *words,string &newWord,int size)
{ int m=0;
for(;m<size;m++)
{ if(words[m].Str==newWord)
{ words[m].Count++;
return;
}
else if(words[m].Str=="")
break;
}
words[m].Str=newWord;
words[m].Count =1;
}
int main()
{
Word *words;
string content;
cout<<"输入一串英文:";
getline(cin, content);
int wCount = 1;
for(unsigned int m=0; m<content.length();m++)
{
if(content[m]==' ')
wCount++;
}
words=new Word[wCount];
string::size_type offset=content.find(' ');
while(offset!=string::npos)
{
string wStr=content.substr(0,offset);
if (wStr.length()<4)
{
wCount--;
content.erase(0,offset+1);
offset=content.find(' ');
continue;
}
content.erase(0,offset+1);
CalcCount(words,wStr,wCount);
offset=content.find(' ');
}
if (content.length()>= 4)
{
CalcCount(words, content, wCount);
}
else wCount--;

for (int n=0; n<wCount; n++)

{
if (words[n].Str=="")
{
wCount--;
}
}
for(m=0;m<wCount-1;m++)
{
cout << words[m].Str << "频率:" << words[m].Count << "次" << endl;
}
delete [] words;
return 0;
}

 

转载于:https://www.cnblogs.com/zjcx8775/p/5285731.html

你可能感兴趣的文章
centos7配置yum源
查看>>
winform textbox提示历史记录
查看>>
SSM整合(spring mybatis)图书
查看>>
Linux学习笔记--终端命令
查看>>
关于电脑桌面图标消失并且右键无法点击的情况
查看>>
JAVA窗口2
查看>>
【Alpha】第八次Scrum meeting
查看>>
学习进度条11
查看>>
剑指offer之【树的子结构】
查看>>
Http协议中常用字段总结(不定时完善中)
查看>>
大道至简——第二章读后感
查看>>
线程的分离与结合
查看>>
混沌数学之Arnold模型
查看>>
判断一个数是偶数还是素数 做相应处理并排序输出
查看>>
进制转换问题
查看>>
Docker 容器的数据管理
查看>>
驱动相关Error
查看>>
补坑:Prufer 编码总结
查看>>
mysql5.4数据库安装_mysql数据库5.6.45安装后的配置(离线安装包版)
查看>>
Mysql 自动加锁_MYSQL事务 SELECT会自动加锁 及乐观锁
查看>>