检验文件相似度 源代码

上传人:飞****9 文档编号:127718889 上传时间:2020-04-05 格式:DOC 页数:10 大小:16.51KB
返回 下载 相关 举报
检验文件相似度 源代码_第1页
第1页 / 共10页
检验文件相似度 源代码_第2页
第2页 / 共10页
检验文件相似度 源代码_第3页
第3页 / 共10页
检验文件相似度 源代码_第4页
第4页 / 共10页
检验文件相似度 源代码_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《检验文件相似度 源代码》由会员分享,可在线阅读,更多相关《检验文件相似度 源代码(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的内容void save1(); /将文章

2、1的统计结果保存到3.txt文本文件中void save2(); /将文章2的统计结果保存到4.txt文本文件中 char article150000;char article250000;char word150020;char word250020;int number2,number1;struct wordchar danci20;int num;float bili;fword1100,fword2100;/*主函数*/void main (int argc, char *argv) int flag1,flag2;if(argc=1) format();else if (argc=

3、2)&strcmp(argv1,/?)=0) format();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 TargetFilenn);printf(SourceFile指文章1的文本文件n); printf

4、(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+) /文件内部指针未到文件尾,执行循环体 article1i=fgetc(ftxt); /从ftxt所指文件中读取一个字节信息n=i-1; fclose(ftxt);article1i=n;p

5、rintf( n文章1内容如下:nn);for(i=0;in;i+)putchar(article1i);return 1;/*从命令行参数输入的文件指针读入文件2的内容*/int read2(char *pho)FILE *fpho;int i,n;if(fpho=fopen(pho,rb)=NULL) /pho即指向的文本文件2的指针printf(%s文件无法打开!n);return 0;printf(nnttt读取文件.nn);for (i=0;!feof(fpho);i+) /文件内部指针未到文件尾,执行循环体 article2i=fgetc(fpho); /从fpho所指文件中读取一

6、个字节信息n=i-1; fclose(fpho);article2i=n;printf( n文章2内容如下:nn);for(i=0;i=65&article1i=97&article1i=65&article2i=97&article2i=122) word2jk=article2i; 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

7、;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+;strcpy(fword1k.d

8、anci,!);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.danci,!)!=0;i+) /对文章2中相同单词个数的统计 fword2i.num=0;for(j=0;jnumber2;j+)if(strcmp(fword2i.danci,word2j)=0) fword2i.num+;fword2i.bili=(float)fword2i.num/(number

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 中学实验

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号