问题 填空题

给定程序的功能是:从键盘输入若干行文本(每行不超过80个字符),并写入文件myfile4.txt中,用-1作为字符串输入结束的标志,然后将文件的内容读出显示在屏幕上。文件的读写分别由自定义函数ReadText和WriteText实现。
[注意] 部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。

[试题源程序]


#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 !!1\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);

答案

参考答案:[1] fw
[2] str
[3] str

解析: 填空1:在该函数中,对已有的语句fputs("\n", fw);分析可知:由于文件流变量fw在函数体中没有定义过,故应填*fw或fw[]。
填空2:要把从键盘上输入的内容写入指定的文件中,键盘上输入的内容已存入字符串str变量中,故应填写str。
填空3:要把已存入文件中的内容从文件中读出且已存入字符串变量str中,最后在屏幕上显示出来,故应填写str。

单项选择题
单项选择题