词频统计实验报告.doc_第1页
词频统计实验报告.doc_第2页
词频统计实验报告.doc_第3页
词频统计实验报告.doc_第4页
词频统计实验报告.doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

南京邮电大学算法与数据结构设计(2015 / 2016 学年 第 二 学期)题 目: 词频统计分析系统 专 业 学 生 姓 名 班 级 学 号 指 导 教 师 指 导 单 位 日 期 评 分 细 则评分项优秀良好中等差遵守机房规章制度上机时的表现学习态度算法思想准备情况程序设计能力解决问题能力课题功能实现情况算法设计合理性算法效能评价报告书写认真程度内容详实程度文字表达熟练程度回答问题准确度简 短 评 语教师签名: 年 月 日评分等级备注评分等级有五种:优秀、良好、中等、及格、不及格词频统计分析系统一、 课题内容和要求我要完成的题目是算法与数据结构设计中的题目,实验的目的是通过实践来学习,使学生加深对课内所学的有关数据的逻辑结构和存储表示、数据结构的选择和应用、算法的设计和时空效率分析等课程基本内容的理解;另外,在程序设计过程中还会用到C语言编程环境以及程序的调试和测试方面的知识,因此我们会受到比较系统和严格的训练。此次实验是要实现一个英文文档的词频统计分析系统。要求能对任意一段英文文档统计出所给字母、数字、空格的个数,并给出分布图或表。同时能对手动输入的字母和单词进行词频统计。要求给出相应的算法时间复杂度分析。通过实习可以提高我们自己的学习能力、通过查阅资料、同时也可以提高我们独立分析问题和解决问题的能力。二、数据结构说明在该部分中叙述你选用的每种逻辑数据结构通常我们把数据的逻辑结构简称为数据结构,数据的逻辑结构分为两大类:线性结构和非线性结构。三、算法设计 在此说明每个部分的算法设计说明(可以是描述算法的流程图),每个程序中使用的存储结构设计说明(如果指定存储结构请写出该存储结构的定义,如果用面向对象的方法,应该给出类中成员变量和成员函数原型声明)。4、 详细设计 实验程序设计如下:#include #include #include #includeusing namespace std;#define MAX 1024 /全局固定变量 MAX 1024typedef struct /定义结构体char word32;int num; wordlist;wordlist wlMAX;int wordnum=0;void tongji() char st32; /定义自变量int found;char c;int i;int m=0,n=0,j=0,k=0; FILE *fp; / 定义文件指针if(fp=fopen(14220105.txt,r)=NULL)exit(1);while(fscanf(fp,%s,st)!=EOF)found=0;for(i=0;i=0&c=a&c=A&c=Z)+k;else +m;fclose(fp);printf(读取完毕,结果如下:n);printf( 数字 %dn 字母 %dn 空格 %dn 其他 %dn,j,k,n,m );/ 输出结果void shuru()char str100;char letter52;int count52=0;/初始化计数器int i;int lc=0;/记录字母总数cout输入字符串:endl;scanf(%s,str);/初始化字母表for(i=0;i26;i+)letteri=A+i;for(i=26;i=A & stri=a & stri=z)/ 写字母countstri-97+26+;/a=97,前面26 写 所 加26lc+;i+;for(i=0;i52;i+)/显示统计情况if(counti!=0)printf(%c-%d-%3.2fn,letteri,counti,(float)counti/lc*100);void xuanzhe() printf(1.读档统计n); printf(2.输入统计n); printf(0.退出n);/输出退出printf(选择您所需要的操作:);int main() /主函数 int choice;do xuanzhe();scanf(%d,&choice);switch(choice) / switch函数进行循环执行case 0:return 0;case 1:tongji();break;case 2:shuru();break;while(1);5、 测试数据及其结果分析程序运行结果1. 2. 3. 时间复杂度为:O(n)六、调试过程中的问题每个算法设计和调试时存在问题的思考(问题是哪些?问题如何解决?),以及算法进一步改进的设想。1. 调试过程中发现有丢掉“;”的错误提示,然后在正确的地方加上就可以了。2. 调试的过程中还遇到“”和“”对应上的错误,通过把程序中的“”和“”一一对应后加上丢掉的一个“”这个错误就解决了。3.因为编译时没有注意将l打成了1,调试后发现了然后将其改正。 4. 出现一个未知的字符,然后检查过后在主函数中定义了自变量i。 5. 调试时没有错误但是运行时结局不一样,然后经过断点调试,发现没有调用的文件,程序没有运行,然后就在文件夹中创建了一个文本文档。七、课程设计总结总结内容包括:(1) 课程设计过程中遇到的问题:调试过程中发现有丢掉“;”的错误提示,然后在正确的地方加上就可以了。调试的过程中还遇到“”和“”对应上的错误,通过把程序中的“”和“”一一对应后加上丢掉的一个“”这个错误就解决了。还有在选择函数的时候会有选择错误的时候,请教同学之后改成正确的函数。还有写程序的时候会不小心拼写错误或者拼写少了一个字母,使得程序前后不能对应,出现不能识别的情况,在调试的时候把错误的地方改过来就可以了。(2) 课程设计过程的收获和感受。 在这次课程设计的过程中让我深刻认识到自己在程序设计这方面的不足,比如说 完成的过程中充满了各种复杂的情绪,从一点点到最后一个完整的程序,其中有冥思苦想的烦恼与痛苦,也有调试过程中随着错误减少直至程序可以演示的激动和喜悦。同时也感受到同学间的友好和热

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论