汉字字频计算程序课程设计.docx

  1. 1、本文档共30页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
汉字字频计算程序课程设计

沈阳航空航天大学课程设计报告课程设计名称:C语言课程设计课程设计题目:汉字字频计算程序院(系):计算机学院专业:计算机科学与技术班级号:2011040101052姓名:胡金鑫指导教师:董燕举完成日期:2012年3月16日目录第1章需求分析1.1 题目的内容1.2 设计要求第2章概要设计32.1 数据类型的定义32.2 主要函数和函数功能描述32.3 程序模块图4第3章详细设计53.1主函数模块53.2排序模块63.3选择统计文本模块73.4统计字频模块83.5输出模块9第4章调试分析10第5章用户使用说明11第6章测试结果16参考文献22附录23源程序:23第1章需求分析1.1 题目的内容给定一篇中文文章,统计该文章中出现了多少种不同的汉字,每个汉字在文章中出现次数(字频)。将这些汉字及其字频按由小到大(或由大到小)次序输出到一个文本文件中。1.2 设计要求1.输入文件、输出文件、和输出次序可以在运行时指定;2.每个汉字及其字频单独一行输出;3.按照课程设计规范书写课程设计报告。第2章概要设计2.1 数据类型的定义该程序使用了结构体数组来存储汉字信息,该数组有10000个结构体类型元素,每个结构体含有3个成员,key[3]用来汉字字符,count用来存储每个汉字在该文本中出现的次数(字频),vis用来判断文本中汉字是否出现了一次以上,定义的方式如下所示:typedef struct hword{char key[3];int count;int vis;}hword; hword[10000];2.2 主要函数和函数功能描述(1)主函数main():调用主菜单函数;(2)比较函数cmp1()cmp2():按由大到小的顺序或者由小到大的顺序比较汉字字频;2.3 程序模块图输出结果输入文本统计字频排序函数图2.1 汉字字频计算程序模块图第3章详细设计3.1主函数模块main()是本程序的主函数,用来调用主菜单函数。流程图如图3.1所示定义变量选择需要统计的文本类型打开现有文章手动输入统计该文本中所有的字符数跳过,读取下一个汉字判断是否为汉字否是统计字频并比较将结果输出到指定文本中图3.1 主函数流程图3.2排序模块cmp1()cmp2()为本程序提供汉字字频的排序,并且根据用户输入的选项选择排序的方式(由大到小或者由小到大),借以完成用户所期望的功能。流程图如图3.2所示定义变量比较汉字字频确定不同的返回值返回图3.2 cmp1()模块流程图3.3选择统计文本模块主函数中的选择被统计的文本模块提供用户输入或是打开其他文件的功能。该部分用到了指针,数组,文件等方面的知识。其中利用strlen函数和while循环求出文本中含有的全部字符数。流程图如图3.3所示定义变量选择打开文本的方式输入现有文件名并打开输入文件名及文章内容统计总字符数图3.3 选择统计文本模块流程图3.4统计字频模块统计字频模块主要有识别汉字和统计字频两大功能。首先通过汉字与其他字符的区别识别汉字,并将识别后的汉字存在之前定义的结构体中。其次通过for循环来统计各个汉字出现的次数。流程图如图3.4所示定义变量跳过,读取下一个判断是否为汉字 否 是存在结构体中比较汉字字频并统计结果图3.4 统计字频模块流程图3.5输出模块本模块主要功能为将统计出来的字频按用户的需求排序后输出。利用for循环执行输出。流程图如图3.5所示用户选择所需排序方式1 2由小到大排序由大到小排序输出排序结果图3.5 输出模块流程图第4章调试分析(1)问题:在判断字符是否为中文汉字时,无法将标点排除。解决方法:查找汉字与标点的区别,然后设为判断条件。(2)问题:在输出汉字及其字频时未能单独一行输出。解决方法:在输出的for循环中添加“\n”。(3)问题:在文件内容存入时,文档内容显示的是乱码。解决方法:将文件写入有fwrite改为fprintf。(4)问题:在运行时提示库函数名为未标识符。解决方法:缺少头文件,添加所需的头文件。第5章用户使用说明(1)主菜单界面:输入1或2,选择要打开文件的方式。选项1为创建新的文章。选项2为打开现有文章。主菜单界面如图5.1所示图5.1 主菜单界面(2)选择排序方式界面:按照提示,首先输入需要打开文件的方式,然后输入相应的信息,再选择需要的排序方式。界面如图5.2所示图5.2 选择排序方式界面(3)选择输出文本界面:选择输出文件。界面如图5.3所示图5.3选择输出文本界面(4)输出结果界面:显示统计结果界面如图5.4所示图5.4统计结果界面第6章测试结果运行程序后,会出现主

文档评论(0)

153****9595 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档