填空题   给定程序中,函数fun的功能是:将自然数1~10以及它们的平方根写到名为myfile3.txt的文本文件中,然后再顺序读出显示在屏幕上。
    请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
    不得增行或删行,也不得更改程序的结构!
    给定源程序:
    #include<math.h>
    #include<stdio.h>
    intfun(char*fname)
    {FILE*fp;int i,n;float x;
    if((fp=fopen fname,”w'))==NULL)return ();
    for(i=1;i<=10;i++)
    /**********found**********/
    fprintf(______,'%d %f\n',i,sqrt((double)i));
    printf('\nSucceed!!\n');
    /**********found**********/
    ______;
    printf('\nThe data in file:\n');
    /**********found**********/
    if((fp=fopen(______,'r'))==NULL)
    return 0:
    fscanf(fp,'%d%f',&n,&x);
    while(!feof(fp))
    {printf('%d%f\n',n,x);
    fscanf(fp,'%d%f',&n,&x);}
    fclose(fp);
    return 1;
    }
    main()
    {char fname[]='myfile3.txt';
    fun(fname);
    }
 
【正确答案】
【答案解析】填空1:fprintf函数的形式是:fprintf(文件指针,格式字符串,输出表列);,所以填入文件指针fp。 填空2:文件一旦使用完毕,应使用关闭函数fclose()将文件关闭,以避免发生文件数据丢失等错误。 填空3:fopen函数用来打开一个文件,其一般形式为:文件指针名=fopen(文件名,使用文件方式);因此应填入文件名fname。