糯米文學吧

位置:首頁 > 計算機 > 計算機二級

計算機二級C語言上機精選模擬題及答案

導語:勤加練習是通過計算機等級考試的有效方式,以下是小編為大家精心整理的計算機二級C語言上機精選模擬題及答案,歡迎大家參考!

計算機二級C語言上機精選模擬題及答案

給定程序的功能是調用fun函數建立班級通訊錄。通訊錄中記錄每位學生的編號、姓名和電話號碼。班級的人數和學生的信息從鍵盤讀入,每個人的信息作為一個數據塊寫到名為的二進制文件中。

請在程序的下劃線處填入正確的.內容並把下劃線刪除,使程序得出正確的結果。

注意:源程序存放在考生文件夾下的BLANK1.C中。

不得增行或刪行,也不得更改程序的結構!

給定源程序:

#include

#include

#defineN5

typedefstruct

{intnum;

charname[10];

chartel[10];

}STYPE;

voidcheck();

intfun(___1___*std)

{

___2___*fp;inti;

if((fp=fopen("","wb"))==NULL)

return(0);

printf("Outputdatatofile!");

for(i=0;i fwrite(&std[i],sizeof(STYPE),1,___3___);

fclose(fp);

return(1);

}

main()

{STYPEs[10]={{1,"aaaaa","111111"},{1,"bbbbb","222222"},{1,"ccccc","333333"},

{1,"ddddd","444444"},{1,"eeeee","555555"}};

intk;

k=fun(s);

if(k==1)

{printf("Succeed!");check();}

else

printf("Fail!");

}

voidcheck()

{FILE*fp;inti;

STYPEs[10];

if((fp=fopen("","rb"))==NULL)

{printf("Fail!!");exit(0);}

printf("Readfileandoutputtoscreen:");

printf("numnametel");

for(i=0;i {fread(&s[i],sizeof(STYPE),1,fp);

printf("m%s%s",s[i],s[i],s[i]);

}

fclose(fp);

}

解題思路

本題是要求把指定的學生記錄輸出到指定的文件中。程序中 共有三處要填上適當的內容,使程序能運行出正確的結果。

第一處:結構定義自變量,因此應填寫STYPE。

第二處:在所填行的下面一行,使用fopen來創建一個二進制文件,但文件流的變量名fp已經給出,這樣,此處只能填寫FILE。

每三處:fwrite是把變量中的內容寫入指定文件中,再根據fwrite參數的使用要求,所以只能填寫文件流變量fp。

***************************************************

給定程序MODI1.C中函數fun的功能是:先將在字符串s中的字符按正序存放到t串中,然後把s中的字符按逆序連接到t串的後面。

例如:當s中的字符串為:"ABCDE"時,則t中的字符串應為:"ABCDEEDCBA"。

請改正程序中的錯誤,使它能得出正確的結果。

注意:不要改動main函數,不得增行或刪行,也不得更改程序的結構!

給定源程序:

#include

#include

voidfun(char*s,char*t)

{inti,sl;

sl=strlen(s);

for(i=0;i<=s1;i++)

t[i]=s[i];

for(i=0;i t[sl+i]=s[sl-i-1];

t[sl]=’