软件工程1916|W (福州大学)

  1. 班级首页
  2. 作业列表
  3. 详情

结对第二次—文献摘要热词统计及进阶需求 [已截止]


请大家在作业开头添加格式描述:

这个作业属于哪个课程 <课程的链接>
这个作业要求在哪里 <作业要求的链接>
结对学号 <写上两个结对同学的学号>
这个作业的目标 <写上具体方面>
作业正文 .... 注意代码要按格式上传
其他参考文献 ...

本次任务

本次作业分为两部分:
一、基本需求:实现一个能够对文本文件中的单词的词频进行统计的控制台程序。
二、进阶需求:在基本需求实现的基础上,编码实现顶会热词统计器。

特别说明:只要实现基本功能就有个基本分数,但是实现进阶的得到更多的分数。

一、WordCount需求

(一)WordCount基本需求

实现一个命令行程序,不妨称之为wordCount

第一步、实现基本功能
输入文件名以命令行参数传入。例如我们在命令行窗口(cmd)中输入:

//C语言类
wordCount.exe input.txt

//Java语言
java wordCount input.txt

则会统计input.txt中的以下几个指标

  1. 统计文件的字符数
    - 只需要统计Ascii码,汉字不需考虑
    - 空格,水平制表符,换行符,均算字符

  2. 统计文件的单词总数,单词:至少以4个英文字母开头,跟上字母数字符号,单词以分隔符分割,不区分大小写

    • 英文字母: A-Z,a-z
    • 字母数字符号:A-Z, a-z,0-9
    • 分割符:空格,非字母数字符号
    • 例:file123是一个单词,123file不是一个单词。file,File和FILE是同一个单词
  3. 统计文件的有效行数:任何包含非空白字符的行,都需要统计。

  4. 统计文件中各单词的出现次数,最终只输出频率最高的10个。频率相同的单词,优先输出字典序靠前的单词。

  5. 按照字典序输出到文件result.txt:例如,windows95,windows98和windows2000同时出现时,则先输出windows2000

    • 输出的单词统一为小写格式
  6. 输出的格式为

characters: number
words: number
lines: number
<word1>: number
<word2>: number
...

第二步、接口封装
在写了一些