检验文件相似度源代码.pdf

上传人:白大夫 文档编号:5539782 上传时间:2020-06-04 格式:PDF 页数:10 大小:54KB
返回 下载 相关 举报
检验文件相似度源代码.pdf_第1页
第1页 / 共10页
检验文件相似度源代码.pdf_第2页
第2页 / 共10页
检验文件相似度源代码.pdf_第3页
第3页 / 共10页
检验文件相似度源代码.pdf_第4页
第4页 / 共10页
检验文件相似度源代码.pdf_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《检验文件相似度源代码.pdf》由会员分享,可在线阅读,更多相关《检验文件相似度源代码.pdf(10页珍藏版)》请在三一文库上搜索。

1、精品文档 . / xiangsidu.cpp : Defines the entry point for the console application. / /#include “stdafx.h“ /#include “stdlib.h“ #include #include void format(); /没有参数或参数为“/?”时的帮助提示 void xiangsidu(); /实现对两个目标文件统计相似度的功能 int read1(char *txt); /从命令行参数输入的文件指针读入文件1 的内容 int read2(char *pho); /从命令行参数输入的文件指针读入文件2

2、的内容 void save1(); /将文章 1 的统计结果保存到3.txt 文本文件 中 void save2(); /将文章 2 的统计结果保存到4.txt 文本文件 中 char article150000; char article250000; char word150020; char word250020; int number2,number1; struct word 精品文档 . char danci20; int num; float bili; fword1100,fword2100; /*主函数 */ void main (int argc, char *argv)

3、int flag1,flag2; if(argc=1) format(); else if (argc=2) else if(argc=3) flag1=read1(argv1); flag2=read2(argv2); if(flag1=0|flag2=0) printf(“ 读取信息失败 !n“); else xiangsidu();save1();save2(); else printf(“n该程序应该携带2 个参数 !n“); void format() /没有参数或参数为“/?”时的帮助提示 精品文档 . printf(“n命令格式为: xingsidu SourceFile Tar

4、getFilenn“); printf(“SourceFile指文章 1 的文本文件 n“); printf(“TargetFile指文章 2 的文本文件 n“); /*从命令行参数输入的文件指针读入文件1 的内容 */ int read1(char *txt) FILE *ftxt; int i,n; if(ftxt=fopen(txt,“rb“)=NULL) /txt即指向的文本文件1 的指针 printf(“%s文件无法打开 !n“); return 0; printf(“nnttt读取文件 .nn“); for (i=0;!feof(ftxt);i+) /文件内部指针未到文件尾,执行循

5、环 体 article1i=fgetc(ftxt); /从 ftxt 所指文件中读取一个字节信息 n=i-1; fclose(ftxt); article1i=n; printf(“ n文章 1 内容如下: nn“); for(i=0;i=65 k+; else if(article2i= |article2i=,|article2i=.) word2jk=0; j+; k=0; number2=j; /文章 2 中所有的单词个数 number2 精品文档 . k=0; strcpy(fword10.danci,“!“); strcpy(fword20.danci,“!“); for(i=0;

6、inumber1;i+) /两篇文章中相同单词的统 计 flag=1; for(j=0;jnumber2;j+) if(strcmp(word1i,word2j)=0) for(m=0;strcmp(fword1m.danci,“!“)!=0;m+) / 检测相同的单词在前面是否已经统计过 if(strcmp(word1i,fword1m.danci)=0) flag=0; if(flag) strcpy(fword1k.danci,word1i); /将相 同的单词分别存入结构体数组fword1 和 fword2 中 strcpy(fword2k.danci,word2j); k+;strc

7、py(fword1k.danci,“!“);strcpy(fword2k.danci,“!“); break; 精品文档 . for(i=0;strcmp(fword1i.danci,“!“)!=0;i+) /对文章 1 中相同 单词个数的统计 fword1i.num=0; for(j=0;jnumber1;j+) if(strcmp(fword1i.danci,word1j)=0) fword1i.num+; fword1i.bili=(float)fword1i.num/(number1+1)*100; /相同单 词在文章 1 中占的比例 for(i=0;strcmp(fword2i.da

8、nci,“!“)!=0;i+) /对文章 2 中相同 单词个数的统计 fword2i.num=0; for(j=0;jnumber2;j+) if(strcmp(fword2i.danci,word2j)=0) fword2i.num+; fword2i.bili=(float)fword2i.num/(number2+1)*100; /相同单 词在文章 2 中占的比例 printf(“ 文章 1 单词总数: %dn“,number1); printf(“文章 2 单词总数: %dn“,number2); printf(“nnntt 文章 1tt 文章 2n“); printf(“n相同单词

9、t 个数 t 百分比 tt 个数 t 百分比 n“); for(i=0;strcmp(fword1i.danci,“!“)!=0;i+) 精品文档 . printf(“%5s t%dt%5.2f% t%dt %5.2f% n“,fword1i.danci,fword1i.num,fword1i.bili,fword2i.num,fword2i.bili); /*将文章 1 的统计结果保存到3.txt 文本文件中 */ void save1() FILE *fp; int i,a=1; if(fp=fopen(“3.txt“,“wb“)=NULL) printf(“3.txt文件无法打开 !n“

10、); / exit(0); for (i=0;strcmp(fword1i.danci,“!“)!=0;i+) /将信息写入文件 if(fwrite(a=0; if(a) printf(“n文章 1 统计结果已存入文件3.txt 中,共 %d 条记录 n“,i);/输出 记录个数 fclose(fp); 精品文档 . /*将文章 2中的统计结果保存到4.txt 文本文件中 */ void save2() FILE *fp; int i,a=1; if(fp=fopen(“4.txt“,“wb“)=NULL) printf(“4.txt文件无法打开 !n“); / exit(0); for (i=0;strcmp(fword2i.danci,“!“)!=0;i+) /将信息写入文件 if(fwrite(a=0; if(a) printf(“n文章 2 统计结果已存入文件4.txt 中,共 %d 条记录 n“,i);/输出 记录个数 fclose(fp);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1