关于100分请教一个问题(如何统计一篇英文文章中每个单词出现的次数!)的搜索推荐 -CPP-TryCatch
>> 相关推荐
关于的搜索推荐
首先要把一个文本文件(a.txt)中的内容显示到Memo中,然后统计其中每个单词出现的次数(不分大小写),最好能够把一个单词的各种形式等同为该单词(比如一篇文章中出现do,does,did则认为do出现三次)。然后将结果显示在另外一个Memo中!
首先要把一个文本文件(a.txt)中的内容显示到Memo中 读文件
---------------------------------------- 然后统计其中每个单词出现的次数(不分大小写) 有点麻烦,利用空格和标点符号吧,遇到这些就重新算一个新单词,新单词放入内存或临时文件中.
---------------------------------------- 最好能够把一个单词的各种形式等同为该单词(比如一篇文章中出现do,does,did则认为do出现三次) 不可能,除非出字典
---------------------------------------- 然后将结果显示在另外一个Memo中! Memo1-&Lines-&Add("....")
用标准库的函数~~~~~~太方便了~~~~~~~~~~:)
注:好象list&string&的~~~~~~~~~~吧
1、把每个单词的不同的形式建一个数据库(不好弄) 2、读取(a.txt)里的每个单词(以空格区分),并记录该单词出现的次数
用STL,一会就搞定了!
能不能说的详细些,不解?
监视空格。
每次空格与空格之间取得一段字符存到一个字符串变量里面,并且记录与...
英文文章存于en.dat.
------------
好象是当年的汇编作业,你不要太懒了,作业可要自己做哟
------------
这个问题是入门级的,要尝试自己解决,你没...
编程一段程序统计一篇英文文档中包含几个不同的单词 每个单词出现的频率是什么?谁能帮我看看
------------
有点烦杂啦,分太少
------------
额 是啊 我不知...
这个如何实现:一篇文档(TXT)中有大概10000个单词,每行一个,有重复的。如何用java实现统计出出现次数最多的一个单词呢?
------------
没实践过。Lucene 全...
“An injury-time penalty from substitute Francesco Totti took ten-man Italy past Australia and into the last eight of the 2006 FIFA World Cup? in Kais...
最初想法是以空格为界限,但是其中还包含的标点符号不能算进去。那么应该怎么做??
------------
string 里面的isalpha(c)函数如果c是字母则为
-------...
此程序是找出一个1881.txt 这个文档中出现次数超过50次的词汇!!!帮忙把这段C代码转换成Java的。谢谢#include &iostreaminclude &fstreamincl...
如何查找一篇文章中某个单词出现的次数。谢谢!
------------
可以用递归算法!具体你给我个MAIL,我发给你(c or assemble)?
------------
字符串的比较而...
比如,下面这篇文章保存在一个文件名为
input.txt 的文件里:Opportunities don't come often. They come every once in a while. Very often, they come quie...
输入一行文本
统计每个单词的次数 并输出单词(要去掉同样的单词)及其次数求经典的算法???
------------
#include &stringinclude &map&你...
输入一行文本
统计每个单词的次数 并输出单词(要去掉同样的单词)及其次数求经典的算法???
------------
------------
------------
GOif exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fnWordInStrCount]') and xtype in (N'FN', N'IF', N'TF'))drop function [...
比如一篇文章:In the Orient young bulls are tested for the fight arena in a certain manner. Each is brought to the ring and allowed to attack a picado...
本帖最后由 zhangliuhui 于
17:57:55 编辑
------------
delete pRoot-&word...
------------
strcpy_s(pLoc-&word,strlen(pLoc-&word)...
本帖最后由 lin 于
22:55:37 编辑
------------
例如我要输5个单词就先输数字5然后 一个一个单词键入电脑。
------------
creat算法实现...
我想统计一篇文章的阅读次数,文章名称的超链接是&a href="文章" onclick=""&文章&/a&数据库内保存文章的表主键为ID,阅读次数的列名为次数,新发的...君,已阅读到文档的结尾了呢~~
一篇英文文章[优质文档]
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
一篇英文文章[优质文档]
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer--144.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口写一个程序,分析一个文本文件(英文文章)中各个词出现的频率,并把频率最高的十个单词打印出来
写一个程序,分析一个文本文件(英文文章)中各个词出现的频率,并把频率最高的十个单词打印出来
发布时间: 2:23:34
编辑:www.fx114.net
本篇文章主要介绍了"写一个程序,分析一个文本文件(英文文章)中各个词出现的频率,并把频率最高的十个单词打印出来 ",主要涉及到写一个程序,分析一个文本文件(英文文章)中各个词出现的频率,并把频率最高的十个单词打印出来 方面的内容,对于写一个程序,分析一个文本文件(英文文章)中各个词出现的频率,并把频率最高的十个单词打印出来 感兴趣的同学可以参考一下。
& 我编程,我快乐!
& & & 每次编程之前,用我们专业特有的口号,激励、鞭策自己,细心、认真的编写每一个程序,实现一个比较完美的程序。
& & & 首先:分析题目,理清解题思路。
& & & & & & & (1)、读取已经创建好的文本文件(英文文i章);
& & & & & & & (2)、边读取的文件,边将文件中的单词以及出现的次数,保存在已经定义好的结构体中;
& & & & & & & (3)、进行次数排序同时输出频率最高的十个单词以及出现次数;
& & & & & & & (4)、在运行过程中加入了程序运行时间的统计。
& & & 其次:开始程序的各个模块的编写。
& & & 2-25:实现文件的读取及写入,文件读取时采用的是C++中的文件文件流&ifstream,文件的写入过程是一个非常繁杂的过程,起初定义了结构体,(如下) ,一个单词录入完成后(数组保存单独的一个单词),使用定义的结构体指针,指向下一个单词,通过循环,实现文件的读写。
& & & & & & & & & & & & struct Word& & & & & & & & & & & & //自定义数据类型用于储存单词和出现次数& & & & & & & & & & & {& & & & & & & & & & & & & &char name[30];& & & & & & & & & & & & & && & & & & & & & & & & & & &struct Word *& & & & & & & & & & & };
& & & 2-27:排序操作,通过选择排序,运用结构体指针,进行每个单词出现次数num的大小比较,依大到小进行排列,最后调用OutOff()函数输出出现频率最大的十个单词。
& & & 3-2:进行程序整合上传,基本完成程序要求。
& & &最后: 程序源代码如下:
1 //For text document analysis and the maximum output frequency of ten words
2 //liujing ,February,25,2014
3 #include&iostream&
4 #include&fstream&
5 #include&string&
6 #include&sys/timeb.h&
7 #include&windows.h&
8 using namespace
9 struct Word
10 //自定义数据类型用于储存单词和出现次数
12 char name[30];
14 struct Word *
16 void ReadFile(struct Word *head);
17 void OutOff(struct Word *head,int n);
18 void Sort(struct Word *head);
20 void main()
timeb t1,t2;
struct Word *
head=new W
head-&next=NULL;
*****************分析文本文件,输出频率最高的十个单词*************"&&
//ftime(&t1);//获取开始时间
LARGE_INTEGER BegainT
LARGE_INTEGER EndT
LARGE_INTEGER F
QueryPerformanceFrequency(&Frequency);
QueryPerformanceCounter(&BegainTime) ;
ReadFile(head);
Sort(head);
OutOff(head,10);
QueryPerformanceCounter(&EndTime) ;
t=(( EndTime.QuadPart - BegainTime.QuadPart )*1000 / Frequency.QuadPart);
ftime(&t2);//获取结束时间
t=(t2.time-t1.time)*1000+(t2.millitm=t1.millitm);//计算时间差
程序运行总时间为:"&&t&&"ms"&&
48 void ReadFile(struct Word *head)////读入文件识别并储存单词,统计次数
char a,Tword[30];
struct Word *p;
ifstream infile("father.txt");
if(!infile)
cout&&"cannot open!"&&
while(infile)
infile.get(a);
Tword[0]=' ';//标记位用于判断是否输入单词
while((a&='a'&&a&='z')||(a&='A'&&a&='Z')||temp[0]==' ')
if(a&='a'&&a&='z'||a&='A'&&a&='Z')
Tword[i]=a;
infile.get(a);
if(infile.eof())
Tword[i]='\0';
if(!_stricmp(Tword,p-&name))
if(!p&&Tword[0]!='\0')
strcpy(p-&name,Tword);
p-&next=head-&
head-&next=p;
infile.close();
98 void OutOff(struct Word *head,int n)
struct Word *p;
101
p=head-&
102
"&&"单词"&&"
"&&"频率"&&
103
for(int i=0;i&n;i++)
104
"&&p-&name&&"------"&&p-&num&&
106
}
108 }
109 void Sort(struct Word *head)
110 {
111
struct Word *p,*q,*s,*l;
112
p=head-&
114
p-&next=NULL;
116
while(s)
117
while(p&&p-&num&s-&num)
119
q-&next=s;
124
s-&next=p;
126
p=head-&
128
程序运行结果截图:
本文标题:
本页链接:怎么读取并分割一篇英文文章中的每个单词 - C++当前位置:& &&&怎么读取并分割一篇英文文章中的每个单词怎么读取并分割一篇英文文章中的每个单词&&网友分享于:&&浏览:157次如何读取并分割一篇英文文章中的每个单词?最初想法是以空格为界限,但是其中还包含的标点符号不能算进去。那么应该怎么做??------解决方案--------------------string 里面的isalpha(c)函数如果c是字母则为
------解决方案--------------------上边的可行。。。
------解决方案--------------------
我 刚学会一点点C++老师经常让做一些分割
通过判断 他是不是 字母来 分割
------解决方案--------------------Java code
public class SplitDemo {
* 我们知道英文中都是标点符号后都有一个空格的,所以我考虑先根据空格揭开词
* 然后把带标点的词都删除掉最后一个字符,以此达到截取到词的目的
public static void main(String[] args) {
//str为例子
String str = &Hello, my name is Jack.&;
//split方法获得所有词的String数组
String[] strs = str.split(& &);
for(int i=0;i&strs.i++){
//用短路或判断揭开来的单词是否包含标点符号
if(strs[i].contains(&,&)||strs[i].contains(&.&)){
for(int j=0;j&strs[i].length()-1;j++){
System.out.print(strs[i].charAt(j));
System.out.println();
System.out.println(strs[i]);
------解决方案--------------------呵呵,LZ去看看《C++ primer》前面第一章就这个问题解答********************************************************************************* C++经典之作下载链接:http://blog.csdn.net/jerryjbiao/article/details/7358796 *********************************************************************************
12345678910
12345678910
12345678910 上一篇:下一篇:文章评论相关解决方案 12345678910 Copyright & &&版权所有