码迷,mamicode.com
首页 > 其他好文 > 详细

结对编程——词频统计 2

时间:2016-03-29 23:39:00      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:

  • [必做 2] 读取小文本文件A_Tale_of_Two_Cities.txt 或者 大文本文件Gone_with_the_wind.txt,统计某一指定单词在该文本文件中出现的频率。
  • 命令行格式: 提示符> Myapp.exe -f filename.txt -w word (PS:C++ 程序,Java 程序输出方式类似)
  • 解释:
    • 选项 -f 表示打开某一文件(filename.txt)
    • 选项 -w 表示统计其后单词(word)在打开的文件(filename.txt)中的频率

结对伙伴:陈晖,博客地址:http://www.cnblogs.com/cchenhui

              Github:https://github.com/cchenhui/-4

贡献比例:1:1

技术分享

 

源程序:

 1 #include <iostream>
 2 #include <vector>
 3 #include <algorithm> 
 4 #include <string>
 5 #include <fstream>
 6 using namespace std;
 7 
 8 struct WORD
 9 {
10     string word;
11     int num;
12 };
13 
14 vector<WORD> a;  //创建vector对象,a[]
15 
16 int&value(const string&s)
17 {
18     for(int i=0;i<a.size();i++)
19         if(s==a[i].word)
20             return a[i].num;
21         WORD p;
22         p.word=s;
23         p.num=0;
24         a.push_back(p);  //在数组a最后添加数据
25         return a[a.size()-1].num;
26 }
27 
28 int main()
29 {
30     string str;
31     cout << "输入字符串:\n";
32     char c;
33     while(c=cin.get())
34     {
35         if((c>=a && c<=z) || (c>=A && c<=Z) || c==  || c==\n)  
36             str+=c;   //去除符号
37         if(c==\n)
38             break;
39     }
40 //输出去掉非英文字符的字符串
41     
42     
43     for(int j=0;str[j]!=\0;j++)
44     {
45         if(str[j]>=A&&str[j]<=Z)
46         {
47             str[j]+= 32;  //大写字母Ascll码+32转换为小写
48         }
49     }
50  //输出转换为小写的字符串
51 
52     string buf;
53     ofstream fout("D:\123.txt");  //把转换好的字符串写入文件
54     fout<<str;
55     fout.close ();
56     ifstream fin("D:\123.txt");  //读出写入的字符串并排序
57     cout<<"输入统计单词:";
58     char m;
59     cin>>m;  //待统计单词m
60     int total=0;    
61     if(!strcmp(p,m))
62     {
63         total++;
64     }
65     while(fin>>buf)
66     {
67         value(buf)++;
68     }
69     vector<WORD>::const_iterator p;  //迭代器访问元素
70     for(p=a.begin();p!=a.end();++p)
71         cout<<p->word<<":"<<p->num<<\n;    
72     return 0;
73 }

总结:

这次的结对编程比起上一次来要顺利了很多,因为通过上一次的结对,让我们变得默契了很多。

我觉得结对编程实在值得推荐,【感觉自己说了不止一遍了。

至于好处,相信合作过的人都知道。

 

结对编程——词频统计 2

标签:

原文地址:http://www.cnblogs.com/shilijing/p/5335194.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!