文件的拷贝操作

根据流程图,设计文件拷贝
文件的拷贝操作
include<stdio.h>
#include<string.h>
int main()
{
FILE *fp,*fp1;
int i;
char s[123],d,a[20],b[20];
printf(“请输入文件名\n”);
scanf("%s%s",a,b);
fp=fopen(a,“r”);
if(fp!=NULL)
{
while((fp1=fopen(b,“r”))!=NULL)
{
printf(“请选择是否覆盖\n”);
printf(“输入a覆盖,b不覆盖\n”);
getchar();
scanf("%c",&d);
while(!(d==‘a’||d==‘b’))
{
printf(“请重新输入\n”);
scanf("%c",&d);
}
if(d==‘a’)
{
fclose(fp1);
fp1=fopen(b,“w+”);
s[0]=fgetc(fp);
while(s[0]!=EOF)
{
fputc(s[0],fp1);
s[0]=fgetc(fp);
}
break;
}
else
{
getchar();
printf(“请输入b文件名\n”);
scanf("%s",b);
}
}
if(fp1NULL)
{
fp1=fopen(b,“w+”);
printf(“请输入b文件内容\n”);
scanf("%s",s);
fputs(s,fp1);
}
}
else
{
printf(“请输入a文件内容\n”);
fp=fopen(a,“w+”);
scanf("%s",s);
fputs(s,fp);
fseek(fp,0,0);
while((fp1=fopen(b,“r”))!=NULL)
{
printf(“请选择是否覆盖\n”);
printf(“输入a覆盖,b不覆盖\n”);
scanf("%c",&d);
fclose(fp1);
while(!(d
’a’||d==‘b’))
{
printf(“请重新输入\n”);
scanf("%c",&d);
}
if(d==‘a’)
{
fp1=fopen(b,“w”);
s[0]=fgetc(fp);
while(s[0]!=EOF)
{
fputc(s[0],fp1);
s[0]=fgetc(fp);
}
break;
}
else
{
getchar();
printf(“请输入b文件名\n”);
scanf("%s",b);
}
}
if(fp1==NULL)
{
fp1=fopen(b,“w+”);
printf(“请输入b文件内容\n”);
scanf("%s",s);
fputs(s,fp1);
}
}
fclose(fp);
fclose(fp1);
return 0;
}


上一篇:c语言fopen fwrite


下一篇:Button 按钮