(1)fun函數(shù)中進行文件操作,fp是文件指針,指向打開的二進制讀寫文件filename,后面應(yīng)該讀入數(shù)據(jù),由于空1是在while條件中,通常用是否讀到文件尾作為讀文件的循環(huán)終止條件,如果未到文件尾,函數(shù)feof(fp)的返回值為0,!feof(fp)為真,因此填入:feof(fp)。(2)空2由于題目要求從指定文件中找出指定學(xué)號sno的學(xué)生數(shù)據(jù)。因此應(yīng)該填入:==sno。(3)空3是移動文件指針,將修改后的學(xué)生記錄寫回到文件的原來位置上,覆蓋原來的數(shù)據(jù),因此需要將文件指針從當前位置向前移動一個記錄的字節(jié)數(shù),也就是sizeof(STU),應(yīng)填入:sizeof(STU)。
二、改錯題
給定程序中,函數(shù)fun的功能是:計算正整數(shù)num的各位上的數(shù)字之積。
例如,若輸入252,則輸出應(yīng)該是20;若輸入202,則輸出應(yīng)該是0。
請改正程序中的錯誤,使其能得出正確的結(jié)果。
注意:不要改動main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!
#include <stdio.h>
long fun(long num)
{
long k;
do
{
k*=num%10 ;
num\=10;
}while(num);
return (k);
}
main()
{
long n;
printf("\Please enter a number:");
scanf("%ld",&n);
printf("\n%ld\n",fun(n));
}
【答案及解析】
相關(guān)推薦:計算機二級C技巧:VC6.0控制鼠標反方向移動北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |