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

admin2010-11-26  26

问题 给定程序的功能是:从键盘输入若干行文本(每行不超过80个字符),写到文件myfile4.txt中,用-1作为字符串输入结束的标志。然后将文件的内容读出显示在屏幕上。文件的读写分别由自定义函数ReadText和WriteText实现。
   注意:部分源程序给出如下。
   请勿改动主函数main和其他函数中的任何内容,仅在行线上填入所编写的若干表达式或语句。
   [试题源程序]
   #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)
   {
   printf("open fail!!\n");exit(0);
   }
   WriteText(fp);
   fclose(fp);
   if((fp=fopen("myfile4.txt","r"))==NULL)
   {
   printf("open fail!!\n");exit(0);
   }
   ReadText(fp);
   fclose(fp);
   }
   /**********found**********/
   void WriteText(FILE  (1)  )
   {
   char str[81];
   printf("\nEnter string with -1 to end:\n");
   gets(str);
   while(strcmp(str,"-1")!=0){
   /**********found**********/
   fputs(  (2)  ,fw);
   fputs("\n",fw);
   gets(str);
   }
   }
   void ReadText(FILE * fr)
   {
   char str[81];
   printf("\nRead file and output to screen:\n");
   fgets(str,81,fr);
   while(!feof(fr)){
   /**********found**********/
   printf("%s",  (3)  );
   fgets(str,81,fr);
   }
   }

选项

答案*fw str str

解析 本题要求是把键盘上输入的内容写到指定的文件中。程序中共有三处要填上适当的内容,使程序能运行出正确的结果。
   填空1:要求填写文件流的自变量名,在这个函数中,已有的语句fputs("\n",fw);分析可知:由于文件流变量fw在函数体没有定义过,所以本处应填*fw或fw[]。
   填空2:通过while循环语句,把键盘上输入的内容,要写入到指定的文件中,键盘上输入的内容已存入字符串str变量中,因此,本处应填写str。
   填空3:要把已存入文件中的内容,再从文件中读出且已存入字符串变量str中,最后在屏幕显示出来,因此,此处应填写str。
转载请注明原文地址:https://kaotiyun.com/show/HPID777K
0

相关试题推荐
最新回复(0)