填空题 给定程序中,函数fun的功能是将形参给定的字符串、整数、浮点数写到文本文件中,再用字符方式从此文本文件中逐个读入并显示在终端屏幕上。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
不得增行或删行,也不得更改程序的结构!
给定源程序:
#include<stdio.h>
void fun(char*s,int a,double f)
{
/**********found**********/
1fp;
char ch;
fp=fopen("file1.txt","w");
fprintf(fp,"%s %d %f/n",s,a,f);
felose(fp);
fp=fopen("file1.txt","r");
printf("/nThe result:/n/n");
ch=fgetc(fp);
/**********found**********/
while(!feof( 2)){
/**********found**********/
putchar( 3);ch=fgetc(fp);}
putchar("/n");
fclose(fp);
}
main()
{char a[10]="Hello!";int b=12345;
double c=98.76;
fun(a,b,c);
}
【正确答案】
【答案解析】(1)FILE* (2)fp (3)ch [解析] 填空1:由语句fopen("file1.txt","r")可知,fp应该是文件类型指针,因此本空应该填写FILE*。
填空2:feof函数只能对文件类型数据进行操作,因此本空填写fp。
填空3:putchar()代表输入一个字符,从ch=fgetc(fp)可以看出本题应该填写ch。