计算机二级-C语言-程序填空题-190110记录-文件写入与文件读出显示

//给定程序功能是:从键盘输入若干行文本(每行不超过80个字符),写到文件myfile4.txt中,用-1(独立一行)作为字符串输入结束的标志,然后将文件的内容读到显示在屏幕上。文件的读写分别由自定义函数ReadText和WriteText实现。

//重难点:文件指针的使用。gets()函数的使用。(有缓存区域,以换行符为标识)feof()函数判断文档是否达到末尾。使用‘-1’作为程序结束的实现

#include <stdio.h>

#include <string.h>

#include <stdlib.h>

void WriteText(FILE *);

void ReadText(FILE *);//调用在定义之前,就需要声明

main()

{

  FILE *fp;//文件指针

  if((fp=fopen("myfile4.txt","w"))==NULL)//调用fopen函数以可写的打开文件,并把返回值赋给文件指针。

  {printf("open fail! ");exit(0)}//终止程序

  WriteText(fp);

  fclose(fp);//关闭文件指针。指针和文件之间脱离关系

  if((fp==fopen("myfile4.txt","r"))==NULL)

  {printf("open fail! ");exit(0);}

  ReadText(fp);

  flose(fp);

}

void WriteText(FILE *fw)//形参参数要定义为下文使用的

{

  char str[81];

  printf(" Enter string with -1 to end: ");

  gets(str);//数组首地址,gets函数是以换行符为判断的

  while(strcmp(str,"-1")!=0)//字符串比较函数,-1为结束符,表示整个程序的结束

  {

    fputs(str,fw);

    fputs(" ",fw);//进行下一行的写入

    gets(str);//获取下一行内容

  }

}

void ReadText(FILE *fr)

{

  char str[81]

  printf(" Read file and output to screen: ");

  fgets(str,81,fr);

  while(!feof(fr))//判断文件有没有达到末尾。

  {

    print("%s",str);

    fgets(str,81,fr);//下一行的获取

  }

}

原文地址:https://www.cnblogs.com/ming-4/p/10251185.html