100分 c语言对比两个文件

来源:百度知道 编辑:UC知道 时间:2024/06/03 20:20:05
要求用C语言读取两个文件(文件格式不限例如.txt,.c等),然后对比两个文件的不同(忽略字母大小写、空格、换行的处理),最后输出比较结果(完全相同语句提示或不同文件名及其内容所在的行号)。谢谢了,希望给出注释,答好可追加分数。
十分感谢两位的回答,问题已解决

最长公共子序列方法比较两个文件的相似性。输入两个文件的名字,输出一个文件,不同的地方用红色标出。

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

#define max(x,y) (((x)>(y))?(x):(y))

int LCS(char *str1, char *same1, int len1, char *str2, char *same2, int len2)
{
int same, i, j;
int **midLCS;

midLCS = (int **)malloc(sizeof(int *) * (len1 + 1));
for (i = 0; i <= len1; i++) {
midLCS[i] = (int *)malloc(sizeof(int) * (len2 + 1));
}
for (i = 0; i <= len1; i++) {
midLCS[i][0] = 0;
}
for (i = 0; i <= len2; i++) {
midLCS[0][i] = 0;
}

for (i = 1; i <= len1; i++)
{
for (j = 1; j <= len2; j++)
{
if (str1[i - 1] == str2[j - 1]) {
midLCS[i][j] = midLCS[i - 1][j - 1] + 1;
}
else {
midLCS[i][j] = max(midLCS[i - 1][j], midLCS[i][j - 1]);
}
}
}

for (i = len1, j = len2; i