一、功能要求:
-
统计文件的字符数
-
统计文件的单词总数
-
统计文件的总行数
-
统计文件中各单词的出现次数,输出频率最高的20个。
-
对给定文件进行统计
-
对给定文件夹及其子文件夹下的所有文件进行统计(该定义有递归性)
-
统计两个单词的频率,输出频率最高的前10个。
-
二、初步设计
模块一:输入输出
输入:命令行输入
输出:输出文件result.txt
模块二:文件夹遍历
判断是否为文件夹;
遍历文件夹
模块三:统计
统计文件字符数
统计文件单词总数
统计文件总行数
统计单词出现次数,输出频率最高的10个。
统计词组的频率,输出频率最高的10个
三、实现细节初步
统计文件字符数:判断累加
统计行数:累计换行符或一行一行读
单词识别(特征识别),并进行统计
哈希表创建
利用哈希表存储单词和频数
根据频数进行排序
两个哈希表——十字链表法以统计词组频率。
遍历文件方法:_findfirst, _findnext;
四、顺序安排:
1.命令行输入和文件遍历
2.字符统计
3.行数统计
4.哈希表建立
5.词统计
6.词组统计
五、时间估计:
因为不是很熟悉C++还有命令行文件等操作,估计要花很多时间orz