题目来源:大工慕课 链接
作者:Caleb Sung
题目要求
一个函数,将“文件2”中的内容复制到“文件1”的末尾。
比如:“文件2”中的内容为“C language is useful.” 文件1是空文件,连续调用两次函数之后,“文件1”中的内容为“C language is useful.C language is useful.”可参考教材书上例11-1和例11-2。本题要将“30.file.txt”中的内容复制到以你学号_姓名命名的文件中。如果用feof(
)函数,发现中间多出一个字符,原因是feof()
函数会多读一个字符,自己尝试解决。
题目代码
#include<stdio.h>
#include<stdlib.h>
int main()
{
char *pname;
void copyfile(char *p1,char *p2);
pname="No_Name.txt";//将字符串常量换成你的学号和姓名,如“201612345_刘德华.txt”
copyfile(pname,"30.file.txt"); //调用copyfile函数,完成文件复制
copyfile(pname,"30.file.txt");
return 0;
}
void copyfile(char *p1,char *p2)
{
//编写函数,完成题目功能。
/********begin***********/
/******** end ***********/
}
参考代码
void copyfile(char *p1,char *p2)
{
//编写函数,完成题目功能。
/********begin***********/
FILE *fr,*fw;
char s[256];
fr=fopen(p2,"r");
fw=fopen(p1,"a");
fgets(s,256,fr);
fputs(s,fw);
/******** end ***********/
}