有关文件的C语言题 求大神帮看下程序哪有问题 谢谢!
题目:有2个磁盘文件“A”和“B”,各存放一行字母,今要求把这两个文件中的信息合并(按字母顺序排列),输出到一个新文件“C”中去。
我自己编的代码如下:
程序代码:#include <stdio.h>
#include <stdlib.h>
void main()
{
FILE * fp_A,*fp_B,*fp_C;
fp_A=fopen("A.txt","r");
fp_B=fopen("B.txt","r");
fp_C=fopen("C.txt","w+");
char a[20],b[20],c[20];
fscanf (fp_A,"%s",a);
fscanf (fp_B,"%s",b);
int i=0,j;
char k,min;
for (i=0;a[i]!=0;i++)
{
c[i]=a[i];
}
k=i;
for (i=i;b[i-k]!=0;i++)
{
c[i]=b[i-k];
}
min=c[0];
for (i=1;c[i]!='\0';i++)
{
for (j=i;c[j]!='\0';j++)
if (min>a[j])
{
min=a[j];
a[j]=a[i];
a[i]=min;
}
}
for (i=0;c[i]!='\0';i++)
{
fprintf(fp_C,"%c",c[i]);
}
if (fp_A==NULL)
{printf ("can't open A\n");exit(1);}
if (fp_B==NULL)
{printf ("can't open B\n");exit(1);}
else
{
fclose (fp_A);
fclose (fp_B);
fclose (fp_C);
}
}








