第 1 頁(yè):第1頁(yè):填空題及解題思路 |
第 2 頁(yè):第2頁(yè):改錯(cuò)題及解題思路 |
第 3 頁(yè):第3頁(yè):編程題及解題思路 |
填空題
給定程序中,函數(shù)fun的功能是:將自然數(shù)1~10以及它們的平方根寫(xiě)到名為myfile3.txt的文本文件中,然后再順序讀出顯示在屏幕上。
請(qǐng)?jiān)诔绦虻南聞澗(xiàn)處填入正確的內(nèi)容并把下劃線(xiàn)刪除,使程序得出正確的結(jié)果。
注意:源程序存放在考生文件夾下的BLANK1.C中。
不得增行或刪行,也不得更改程序的結(jié)構(gòu)!
給定源程序:
#include
#include
int fun(char *fname )
{ FILE *fp; int i,n; float x;
if((fp=fopen(fname, "w"))==NULL) return 0;
for(i=1;i<=10;i++)
fprintf(___1___,"%d %f\n",i,sqrt((double)i));
printf("\nSucceed!!\n");
___2___;
printf("\nThe data in file :\n");
if((fp=fopen(___3___,"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);
}
解題思路:
本題要求所求出的數(shù)寫(xiě)入到指定的文件中保存。程序中共有三處要填上適當(dāng)?shù)膬?nèi)容,使程序能運(yùn)行出正確的結(jié)果。
第一處:int fprintf(FILE *stream, const char *format [,argument, …]); 因此本處只能填寫(xiě)文件流的變量fp。
第二處:由于文件打開(kāi)寫(xiě)操作,所以必須要關(guān)閉,因此,只能填寫(xiě)關(guān)閉文件的函數(shù)fclose(fp)。
第三處:由于本題要把剛寫(xiě)入文件中的數(shù)據(jù)重新顯示出來(lái),讀方式已經(jīng)給出,但沒(méi)有給出
文件名,所以本處只能寫(xiě)文件名變量fname或者直接給出文件名"myfile3.dat"。
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |