//题目要求:
//从键盘读入一系列字符并以“#”结束,
//将读入的字符(不包括#号)存入文本文件D:\f1.txt中,
//再从该文件读取内容,并在显示器上原样显示。
#include<stdio.h>
#include<stdlib.h>
//函数申明:
void writefile(int x, FILE* fp);
void readfile(int x, FILE* fp);
int main()
{
FILE* fp;//定义文件指针
char x = 0;
fp = fopen("D:\\f1.txt", "w+"); //利用fopen函数打开文件 //w+为读写方式
if (fp == 0)//判断文件打开后是否正确
{
printf("文件错误\n");
exit(1);//()中不为0,异常退出程序
}
writefile(x, fp);
rewind(fp);//将文件指针重新指向文件开头
readfile(x, fp);
fclose(fp); //关闭当前文件流
return 0;
}
//函数定义:
void writefile(int x, FILE* fp) //将键盘键入的字符写入文件,直到遇到字符#为止
{
printf("从键盘键入字符(以字符#终止):\n");
x = getchar();
while (x != '#')
{
fputc(x, fp);
x = getchar();
}
}
void readfile(int x, FILE* fp) //从文件中读取字符并显示
{
while ((x = fgetc(fp)) != EOF)//文件读取函数fget
{
putchar(x);
}
putchar('\n');
}