博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
test4 结对项目
阅读量:6268 次
发布时间:2019-06-22

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

[必做 1] 基于作业3的结果,读取一个较小的文本文件,统计该文件中的单词的频率,并将统计结果输出到当前目录下的 Result1.txt 文件。

结对对象:袁晨晖  博客地址:http://www.cnblogs.com/ychhhh/

                         github地址:https://github.com/yuanchenhui/zuoye

                         双方贡献 1:1

                         结对照片:

 

 

1 #include
2 #include
3 #include
4 #include
5 using namespace std; 6 7 struct Word{ //定义结构体 8 int Count;//计数器 9 Word() : Str(""), Count(0) {} 10 string Str; //字符串 11 char *p; 12 }; 13 14 15 void exchange(Word &word) //函数,用于交换单词(排序单词) 16 { 17 string tStr = word.Str; 18 int tCount = word.Count; 19 word.Str = Str; 20 word.Count = Count; 21 Str =tStr; 22 Count = tCount; 23 } 24 25 Words test[100]; 26 27 void lwr(char x[]) //大写转小写 28 { int k = 0; 29 while (x[k] != '\0') 30 { 31 if (x[k] >= 'A'&&x[k] <= 'Z') 32 x[k] = x[k] + 32; 33 k++; 34 } 35 } 36 37 int identify(char a[]) //判断是否符合单词的定义 38 { int m=(strlen(a)>=4)?1:0; 39 int n=(a[0]>='a'&&a[0]<='z')?1:0; 40 if(!m||!n) 41 return 0; 42 else 43 while(a) 44 { for(int i=1;;i++) 45 { 46 if(!(a[i]>='a'&&a[i]<='z')||!(a[i]>='0'&&a[i]<='9')) 47 return 0; 48 else 49 return 1; 50 } 51 } 52 } 53 54 void SortWordDown(Word * words, int size) //以单词出现频率降序排列单词,words 单词数组,size 单词数量 55 { 56 for(int i=0;i
= 'A' && result[j] <= 'Z' ) 99 {100 result[j] = result[j] - 'A' + 'a';101 j++;102 }103 }104 cout << result;105 char *sep = " ";106 107 int i = 0;108 ptr = strtok( result, " " ); /* 利用strtok函数来分割result字符串中的单词 */109 while ( ptr != NULL )110 {111 if ( isword( p ) != false )112 {113 if ( judge( p, n ) != false )114 {115 w[n].s = *p; /* 赋值给数组 */116 n++;117 }118 }119 ptr = strtok( NULL, " " );120 }121 int t = 0;122 ofstream outfile; /* 输出文件到result1 */123 outfile.open( "Result1.txt" )124 SortWordDown( w, count );125 while ( w[t].s ) /* 输出统计结果 */126 {127 if ( strlen( w[t].s ) >= 4 )128 {129 outfile << w[t].s << ":" << w[t].count << '\n';130 t++;131 }132 }133 return(0);134 }

运行结果:

借鉴资料:百度了各部分的主题思路,得到模板,怎么解决,问同学。

心得:

互相教对方,可以得到能力上的互补。

可以让编程环境有效地贯彻Design。

有效的减少BUG。

降低学习成本。一边编程,一边共享知识和经验,有效地在实践中进行学习。

在编程中,相互讨论,可能更快更有效地解决问题。

 

转载于:https://www.cnblogs.com/Scorpio1/p/5308556.html

你可能感兴趣的文章
PHP写文件函数
查看>>
mysql的sql_mode合理设置
查看>>
函数连续性与可导性
查看>>
linux下libevent安装
查看>>
用ip来获得用户所在地区信息
查看>>
卡尔曼滤波
查看>>
linux下面覆盖文件,如何实现直接覆盖,不提示
查看>>
CSS3阴影 box-shadow的使用和技巧总结
查看>>
Linux下高cpu解决方案
查看>>
SQL事务用法begin tran,commit tran和rollback tran的用法
查看>>
centos7 crontab笔记
查看>>
.Net AppDomain.CurrentDomain.AppendPrivatePath(@"Libs");
查看>>
【Unity3D基础教程】给初学者看的Unity教程(零):如何学习Unity3D
查看>>
Android Mina框架的学习笔记
查看>>
合并两个排序的链表
查看>>
rtf格式的一些说明,转载的
查看>>
REST Security with JWT using Java and Spring Security
查看>>
echarts学习总结(二):一个页面存在多个echarts图形,图形自适应窗口大小
查看>>
IIS7显示ASP的详细错误信息到浏览器
查看>>
使用fiddler对手机APP进行抓包
查看>>