比较两个文本文件,打印出它们第一个不相同的行。(每行不多于50个字符) 【输入形式】 无输入,两个文件名为file1.txt,file2.txt,可直接读取 【输出形式】 不相同的两行c语言
时间: 2024-02-23 21:00:44 浏览: 135
文本对比器 找出两个文本文件不同的地方
5星 · 资源好评率100%
代码如下:
```c
#include <stdio.h>
#include <string.h>
#define MAX_LEN 50
int main() {
FILE *fp1, *fp2;
char line1[MAX_LEN + 1], line2[MAX_LEN + 1];
int line_num = 1;
int flag = 0;
fp1 = fopen("file1.txt", "r");
fp2 = fopen("file2.txt", "r");
while (fgets(line1, MAX_LEN, fp1) != NULL && fgets(line2, MAX_LEN, fp2) != NULL) {
if (strcmp(line1, line2) != 0) {
printf("line %d: %s", line_num, line1);
printf("line %d: %s", line_num, line2);
flag = 1;
break;
}
line_num++;
}
if (!flag) {
printf("No difference found.\n");
}
fclose(fp1);
fclose(fp2);
return 0;
}
```
注:该程序只比较两个文件的前n行,n为两个文件中行数较小的那个。如果需要比较全部行,需要在while循环中分别加上feof()判断。
阅读全文