求问这哪错了,什么出现无法打开文件
//有两个磁盘文件"A"和"B",各存放一行字母,仅要求把这两文件的信息合并(按字母顺序排列),输出到一个新文件C去#include <stdio.h>
#include <stdlib.h>
int main(void)
{
FILE * fp;
char str[200],ch,t;
int i,i1,n,j;
//打开A文件
if((fp = fopen("A","r")) == NULL)
{
printf("无法打开文件\n");
exit(0);
}
//读取A文件的内容
for(i = 0;(ch = fgetc(fp)) != EOF;i++)
{
str[i] = ch;
putchar(ch);
}
fclose(fp);
i1 = i;
//打开B文件
if((fp = fopen("B","r")) == NULL)
{
printf("无法打开文件\n");
exit(0);
}
//读取B文件的内容
for(i = i1;(ch = fgetc(fp)) != EOF;i++)
{
str[i] = ch;
putchar(str[i]);
}
fclose(fp);
n = i;
for(i = 0;i<n;i++)
{
for(j = i + 1;j<n;j++)
{
if(str[j]>str[j + 1])
{
t = str[j];
str[j] = str[j + 1];
str[j + 1] = t;
}
}
}
if((fp = fopen("c","w")) == NULL)
{
printf("无法打开文件\n");
exit(0);
}
for(i = 0;i<n;i++)
{
putc(str[i],fp);
putchar(str[i]);
}
printf("\n");
fclose(fp);
return 0;