资源描述:
《词频统计实验报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、南京邮电大学算法与数据结构设计(2015/2016学年第二学期)题目:词频统计分析系统专业学生姓名班级学号指导教师指导单位日期评分细则评分项优秀良好中等差遵守机房规章制度上机时的表现学习态度算法思想准备情况程序设计能力解决问题能力课题功能实现情况算法设计合理性算法效能评价报告书写认真程度内容详实程度文字表达熟练程度回答问题准确度简短评语教师签名:年月日评分等级备注评分等级有五种:优秀、良好、中等、及格、不及格词频统计分析系统一、课题内容和要求我要完成的题目是算法与数据结构设计中的题目,实验的目的是通过实践来学习,使学生加深对课内所学的有关数据的逻辑结构和存储表示、数据结构的选择和
2、应用、算法的设计和时空效率分析等课程基本内容的理解;另外,在程序设计过程中还会用到C语言编程环境以及程序的调试和测试方面的知识,因此我们会受到比较系统和严格的训练。此次实验是要实现一个英文文档的词频统计分析系统。要求能对任意一段英文文档统计出所给字母、数字、空格的个数,并给出分布图或表。同时能对手动输入的字母和单词进行词频统计。要求给出相应的算法时间复杂度分析。通过实习可以提高我们自己的学习能力、通过查阅资料、同时也可以提高我们独立分析问题和解决问题的能力。二、数据结构说明在该部分中叙述你选用的每种逻辑数据结构通常我们把数据的逻辑结构简称为数据结构,数据的逻辑结构分为两大类:线性
3、结构和非线性结构。三、算法设计在此说明每个部分的算法设计说明(可以是描述算法的流程图),每个程序中使用的存储结构设计说明(如果指定存储结构请写出该存储结构的定义,如果用面向对象的方法,应该给出类中成员变量和成员函数原型声明)。四、详细设计实验程序设计如下:#include#include#include#includeusingnamespacestd;#defineMAX1024//全局固定变量MAX1024typedefstruct{//定义结构体charword[32];intnum;}wordl
4、ist;wordlistwl[MAX];intwordnum=0;voidtongji(){charst[32];//定义自变量intfound;charc;inti;intm=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;i5、}if(!found){strcpy(wl[i].word,st);wl[i].num=1;wordnum++;}}fclose(fp);if((fp=fopen("14220105.txt","r"))==NULL)exit(1);while((c=fgetc(fp))!=EOF){if(c=='')//数字及空格的读取++n;elseif(c>='0'&&c<='9')++j;elseif((c>='a'&&c<='z')
6、
7、(c>='A'&&c<='Z'))++k;else++m;}fclose(fp);printf("读取完毕,结果如下:");printf("数字%d
8、字母%d空格%d其他%d",j,k,n,m);//输出结果}voidshuru(){charstr[100];charletter[52];intcount[52]={0};//初始化计数器inti;intlc=0;//记录字母总数cout<<"输入字符串:"<