C语言,文件操作问题

来源:百度知道 编辑:UC知道 时间:2024/05/19 03:42:32
/*
建立一个备份文件。 不断地提示输入备份文件名,直到提供的文件名有效为止。
然后提示输入备份文件名并建立备份文件

*/

#include<stdio.h>
#define NUM 80
main()
{

char in_name[NUM];
char out_name[NUM];
char ch;
int fd;

FILE *infp;
printf("input file name:\n");
scanf("%s",in_name);
while((infp=fopen(in_name,"r"))==NULL)
{
perror("infile");
scanf("%s",in_name);
}

FILE *outfp;
printf("input backup file name:\n");
scanf("%s",out_name);
while((outfp=fopen(out_name,"r"))==NULL)
{
scanf("%s",out_name);
perror("outfile");
}

fd=fscanf(infp,"%c",&ch);
while(fd!=EOF)
{<

"r"是对一个新文件进行读取和写入(意即你刚打开失败,而新建的文件)
改为"w"试下呢....写入内容.
//我测试了下程序才发现你最后的close该改成fcloce,main函数也没有返回类型..
//加后缀......我这里都成功了.
//再补充:而且成功创建了两个文件

dfdsfd

wintc通过:结果准确:
#include<stdio.h>
#define NUM 80
main()
{
char in_name[NUM];
char out_name[NUM];
char ch;
int fd=0;
FILE *outfp;
FILE *infp;
printf("input file name:\n");
scanf("%s",in_name);
while((infp=fopen(in_name,"r"))==NULL)
{
perror("infile");
scanf("%s",in_name);
}
printf("input backup file name:\n");
scanf("%s",out_name);
while((outfp=fopen(out_name,"w"))==NULL)
{
perror("outfile");
scanf("%s",out_name);

}
fd=fscanf(infp,"%c",&ch);
while(fd!=EOF)
{
fprintf(outfp,"%c",ch);
fd=fscanf(in