编写C语言程序,用于比较两个正文文件内容相等(既字符相等)

来源:百度知道 编辑:UC知道 时间:2024/09/23 02:27:38
急啊!帮个忙

本不想来啰嗦,但楼上的程序的确有缺陷。
如果两个文件长度不同,上面的程序就会得出错误结果。比如头一个文件内容为:abcde第二个文件内容为:abcdefg会得出错误结果。
程序改写如下,已编译通过:
#include <stdio.h>
#include <stdlib.h>

int main(){

FILE * f1 = fopen("dd.txt","r");/* 改为实际文件名 */
FILE * f2 = fopen("bb.txt","r");

char c1 = fgetc(f1);
char c2 = fgetc(f2);

while(!feof(f1) && !feof(f2)){

if(c1 != c2){printf("NO");system("pause");return 0;}
c1 = fgetc(f1);
c2 = fgetc(f2);
}

if(c1==EOF&&c2==EOF) /* 判断两个文件是否都到结尾 */
printf("YES");
else
printf("NO");
printf("\n");

fclose(f1);
fclose(f2);

system("pause");
return 0;
}

用两个文件变量,打开这两个文件,然后用循环语句进行比较就行了,不是很简单吗?

#include <stdio.h>

int main(){

FILE * f1 = fopen("file1.txt","r");
FI