第1个回答 2016-05-09
#include <stdio.h>
#define nodup(a) if(a != c) { fputc(a, f3); c = a; }
int main()
{
FILE* f1, *f2, *f3;
char a, b, c;
f1 = fopen("a1.dat", "r");
f2 = fopen("a2.dat", "r");
f3 = fopen("a3.dat", "w");
a = fgetc(f1); b = fgetc(f2);
c = 0;
while(a != EOF && b != EOF) {
if(a < b) {
nodup(a);
a = fgetc(f1);
} else {
nodup(b);
b = fgetc(f2);
}
}
while(a != EOF) { nodup(a); a = fgetc(f1); }
while(b != EOF) { nodup(b); b = fgetc(f2); }
fclose(f1);
fclose(f2);
fclose(f3);
}本回答被网友采纳