c語(yǔ)言期末考試習(xí)題及其答案_第1頁(yè)
c語(yǔ)言期末考試習(xí)題及其答案_第2頁(yè)
c語(yǔ)言期末考試習(xí)題及其答案_第3頁(yè)
c語(yǔ)言期末考試習(xí)題及其答案_第4頁(yè)
c語(yǔ)言期末考試習(xí)題及其答案_第5頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余12頁(yè)可下載查看

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、建甌市技工學(xué)校2015-2016年第二期C語(yǔ)言試題 姓名: 班級(jí): 成績(jī): 一 選擇題(每小題2分,共50分)1.C語(yǔ)言源程序的基本單位是( )。 A 過(guò)程 B 函數(shù) C 子程序 D 標(biāo)識(shí)符2.下列程序的輸出結(jié)果是( )。main( ) int a=7,b=5; printf(%dn,b=b/a);A 5 B 1 C 0 D不確定值3.假設(shè)變量a,b均為整型,表達(dá)式(a=5,b=2,ab?a+:b+,a+b)的值是( )。A 7 B 8 C 9 D 24.設(shè)a為int型變量,執(zhí)行下列賦值語(yǔ)句后,a的取值分別是( )。a=125.534; a=(int)125.521%4; a=52;A 125

2、,31,1 B 125,1,20 C 125,31,20 D 125.534,2,205.設(shè)有如下程序段,下面描述中正確的是 ( )。int k=10; while(k=0) k=k-1;A 循環(huán)執(zhí)行一次 B循環(huán)是無(wú)限循環(huán) C循環(huán)體語(yǔ)句一次也不執(zhí)行 D循環(huán)體語(yǔ)句執(zhí)行一次6.以下程序的輸出結(jié)果為( )。int i;void prt( ) for(i=5;i8;i+) printf(%c,*); printf(t);main( ) for(i=5;in B +p-n C p-n+ D (*p).n+14.C語(yǔ)言中的文件類型只有( )。 A 索引文件和文本文件兩種 B 文本文件一種C 二進(jìn)制文件一種

3、 D ASCII碼文件和二進(jìn)制文件兩種15已知函數(shù)fread的調(diào)用形式為fread(buffer,size,count,fp),其中buffer代表的是( )。A 存放讀入數(shù)據(jù)項(xiàng)的存儲(chǔ)區(qū) B 存放讀入數(shù)據(jù)的地址或指向此地址的指針C 一個(gè)指向所讀文件的文件指針 D 一個(gè)整形變量,代表要讀入的數(shù)據(jù)項(xiàng)總數(shù)16以下程序的輸出結(jié)果為( )。 main( ) int i=010,j=10; printf(%d,%dn,i+,j-); 17.設(shè)a為int型變量,執(zhí)行下列賦值語(yǔ)句后,a的取值分別是( )。a=125.534;a=20.0/3;a=(int)125.521%4;a=52;A 125,6,31,1

4、 B 125,6,1,20 C 125,6.666666,31,20 D 125.534,6.666666,2,2018.設(shè)i和k都是int類型,則for循環(huán)語(yǔ)句( )。for(i=0,k=-1;k=1;i+,k+) printf(*n);A 循環(huán)結(jié)束的條件不合法 B 循環(huán)體一次也不執(zhí)行 C 循環(huán)體只執(zhí)行一次 D 是無(wú)限循環(huán)19.以下程序的輸出結(jié)果為( )。main( ) char c; int i; for(i=65;i68;i+) c=i+32;switch(c) case a:case b:case c:printf(%c,c);break; default:printf(end); A

5、 a,b,c,end B a,a,a,end C a,a,a, D a,b,c,20函數(shù)調(diào)用語(yǔ)句:fseek(fp,-10L,2);的含義是( )。A 將文件位置指針從文件末尾處向文件頭的方向移動(dòng)10個(gè)字節(jié) B 將文件位置指針從當(dāng)前位置向文件頭的方向移動(dòng)10個(gè)字節(jié) C 將文件位置指針從當(dāng)前位置向文件末尾方向移動(dòng)10個(gè)字節(jié) D 將文件位置指針移到距離文件頭10個(gè)字節(jié)處21以下程序的輸出結(jié)果為( )。main( ) char s140=country,s220=side;int i=0,j=0; while(s1i!=0) i+; while(s2j!=0) s1i+=s2j+;s1i=0; pr

6、intf(%sn,s1); A side B country C sidetry D countryside22下列說(shuō)法不正確的是( )。A 主函數(shù)main中定義的變量在整個(gè)文件或程序中有效B 不同函數(shù)中,可以使用相同名字的變量C 形式參數(shù)是局部變量D 在一個(gè)函數(shù)內(nèi)部,可以在復(fù)合語(yǔ)句中定義變量,這些變量只在本復(fù)合語(yǔ)句中有效23在下列程序段中,枚舉變量 c1的值是( )。enum color red,yellow,blue=4,green,whitec1; c1=yellow; c1=white; A 1 B 3 C 5 D 624設(shè)有說(shuō)明 int (*ptr)();其中標(biāo)識(shí)符ptr是( )。A

7、 是一個(gè)指向整形變量的指針 B 是一個(gè)指針,它指向一個(gè)函數(shù)值是int的函數(shù) C 是一個(gè)函數(shù)名 D定義不合法25定義由n個(gè)指向整形數(shù)據(jù)的指針組成的數(shù)組p,其正確的方式為( )。A int p; B int (*p)n; C int *pn; D int (*p)( );二 判斷對(duì)錯(cuò),對(duì)的劃“”,錯(cuò)的劃“”(每小題1分,共20分)1在Turbo C中,整型數(shù)據(jù)在內(nèi)存中占2個(gè)字節(jié)。( )2int i=20;switch(i/10)case 2:printf(A);case 1:printf(B);的輸出結(jié)果為A。( ) 3break語(yǔ)句用在循環(huán)體中,可結(jié)束本層循環(huán),continue語(yǔ)句用在循環(huán)體中,

8、可結(jié)束本次循環(huán)。( )4函數(shù)的遞歸調(diào)用不過(guò)是一個(gè)函數(shù)直接或間接地調(diào)用它自身。( )5函數(shù)strlen(ASDFGn)的值是7。( )6通過(guò)return語(yǔ)句,函數(shù)可以帶回一個(gè)或一個(gè)以上的返回值。( )7結(jié)構(gòu)體類型只有一種。 ( )8char *p=girl;的含義是定義字符型指針變量p,p的值是字符串girl。( )9若有定義:char *p(char a10);則p是函數(shù)名。( )10用fopen(file,r+);打開的文件file可以進(jìn)行修改。 ( )11參加位運(yùn)算的數(shù)據(jù)可以是任何類型的數(shù)據(jù)。( )12.若有定義和語(yǔ)句:int a;char c;float f;scanf(%d,%c,%f

9、,&a,&c,&f);若通過(guò)鍵盤輸入:10,A,12.5,則a=10,c=A,f=12.5。( )13.C語(yǔ)言把文件看作是一個(gè)字符(字節(jié))的序列。( ) 14.若有宏定義:#define S(a,b) t=a;a=b;b=t由于變量t沒定義,所以此宏定義是錯(cuò)誤的。( ) 15.在Turbo C中,下面的定義和語(yǔ)句是合法的:file *fp;fp=fopen(a.txt,r);( )16.若有定義:char s china;則Turbo C系統(tǒng)為數(shù)組s開辟6個(gè)字節(jié)的內(nèi)存單元。( )17.若有定義和語(yǔ)句:int a333,5,8,9,12,35,i,sum=0;for(i=0;i3;i+) sum

10、+=ai2-i;則sum=21。( )18.若有定義和語(yǔ)句:struct student int num; char name10; float score; s5=1,lili,98.5,9,xiaohua,66,*p=s;printf(%d,*p+);輸出結(jié)果是1。( )19在程序中定義了一個(gè)結(jié)構(gòu)體類型后,可以多次用它來(lái)定義具有該類型的變量。( ) 20.在Turbo C中,此定義和語(yǔ)句是合法的:enum aa a5,b,cbb;bb=(enum aa)5;( )三、閱讀下列程序,在 處填入適當(dāng)內(nèi)容,使程序完整(每個(gè)空5分,共30分)1.有一個(gè)3*4矩陣,求其中的最大元素。 max_val

11、ue( (1) ) int i,j,max;max=array00; for(i=0;i3;i+) for(j=0;jmax) max=arrayij; (2) ;main( ) int a34, i,j; for(i=0;i3;i+) for(j=0;j4;j+) (3) ; printf(“max value is %dn”,max_value(a); 2.輸入x、y兩個(gè)整數(shù),按先大后小的順序輸出x、y。#include “stdio.h”main( ) int x,y, *px,*py, (4) ; scanf(“%d%d”,&x,&y); (5) ; (6) ; if(xy) p=px

12、; px=py; py=p; printf(“x=%d,y=%dn”,x,y); printf(“MAX=%d,MIN=%dn”,*px,*py); C語(yǔ)言考卷的答案一 選擇題(每小題2分)1. B 2. C 3. B 4. B 5. C 6. A 7. B 8. A 9. A 10. C 11. A 12. A 13. B 14. D 15. B 16. C 17 .B 18. D 19. D 20. A 21. D 22. A 23. D 24. B 25. C 二 判斷對(duì)錯(cuò),對(duì)的劃“”,錯(cuò)的劃“”(每小題1分)1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.( ) 1

13、2.( ) 1 3.( ) 14.( ) 15.( )16.( ) 17.( ) 18.( ) 19.( ) 20.( )四 閱讀下列程序,在 處填入適當(dāng)內(nèi)容,使程序完整(每個(gè)空5分)1.(1)int array34(int array4) (2)return(max) (3)scanf(“%d”,&aij)2.(4)*p (5)px=&x(py=&y) (6)py=&y(px=&x)2003C語(yǔ)言試題3一 選擇題(24分,每小題2分)1已知函數(shù)fread的調(diào)用形式為fread(buffer,size,count,fp),其中buffer代表的是( )。A 存放讀入數(shù)據(jù)項(xiàng)的存儲(chǔ)區(qū) B 存放讀入

14、數(shù)據(jù)的地址或指向此地址的指針C 一個(gè)指向所讀文件的文件指針 D 一個(gè)整形變量,代表要讀入的數(shù)據(jù)項(xiàng)總數(shù)2以下程序的輸出結(jié)果為( )。 main( ) int i=010,j=10; printf(%d,%dn,i+,j-); A 11,9 B 9,10 C 8,10 D 9,93設(shè)a為int型變量,執(zhí)行下列賦值語(yǔ)句后,a的取值分別是( )。a=125.534;a=20.0/3;a=(int)125.521%4;a=52;A 125,6,31,1 B 125,6,1,20 C 125,6.666666,31,20 D 125.534,6.666666,2,204設(shè)i和k都是int類型,則for循環(huán)

15、語(yǔ)句( )。for(i=0,k=-1;k=1;i+,k+) printf(*n);A 循環(huán)結(jié)束的條件不合法 B 循環(huán)體一次也不執(zhí)行 C 循環(huán)體只執(zhí)行一次 D 是無(wú)限循環(huán)5以下程序的輸出結(jié)果為( )。main( ) char c; int i; for(i=65;i68;i+) c=i+32;switch(c) case a:case b:case c:printf(%c,c);break; default:printf(end); A a,b,c,end B a,a,a,end C a,a,a, D a,b,c,6函數(shù)調(diào)用語(yǔ)句:fseek(fp,-10L,2);的含義是( )。A 將文件位置指

16、針從文件末尾處向文件頭的方向移動(dòng)10個(gè)字節(jié) B 將文件位置指針從當(dāng)前位置向文件頭的方向移動(dòng)10個(gè)字節(jié) C 將文件位置指針從當(dāng)前位置向文件末尾方向移動(dòng)10個(gè)字節(jié) D 將文件位置指針移到距離文件頭10個(gè)字節(jié)處7以下程序的輸出結(jié)果為( )。main( ) char s140=country,s220=side;int i=0,j=0; while(s1i!=0) i+; while(s2j!=0) s1i+=s2j+;s1i=0; printf(%sn,s1); A side B country C sidetry D countryside8下列說(shuō)法不正確的是( )。A 主函數(shù)main中定義的變量

17、在整個(gè)文件或程序中有效B 不同函數(shù)中,可以使用相同名字的變量C 形式參數(shù)是局部變量D 在一個(gè)函數(shù)內(nèi)部,可以在復(fù)合語(yǔ)句中定義變量,這些變量只在本復(fù)合語(yǔ)句中有效9在下列程序段中,枚舉變量 c1的值是( )。enum color red,yellow,blue=4,green,whitec1; c1=yellow; c1=white; A 1 B 3 C 5 D 610設(shè)有說(shuō)明 int (*ptr)();其中標(biāo)識(shí)符ptr是( )。A 是一個(gè)指向整形變量的指針 B 是一個(gè)指針,它指向一個(gè)函數(shù)值是int的函數(shù) C 是一個(gè)函數(shù)名 D定義不合法11定義由n個(gè)指向整形數(shù)據(jù)的指針組成的數(shù)組p,其正確的方式為(

18、)。A int p; B int (*p)n; C int *pn; D int (*p)( );12具有相同類型的指針類型變量p與數(shù)組a,不能進(jìn)行的操作是( )。A p=a; B *p=a0; C p=&a0; D p=&a;二 判斷對(duì)錯(cuò),對(duì)的劃“”,錯(cuò)的劃“”(20分,每小題2分)1參加位運(yùn)算的數(shù)據(jù)可以是任何類型的數(shù)據(jù)。( )2若有定義和語(yǔ)句:int a;char c;float f;scanf(%d,%c,%f,&a,&c,&f);若通過(guò)鍵盤輸入:10,A,12.5,則a=10,c=A,f=12.5。( )3C語(yǔ)言把文件看作是一個(gè)字符(字節(jié))的序列。( ) 4若有宏定義:#define

19、S(a,b) t=a;a=b;b=t由于變量t沒定義,所以此宏定義是錯(cuò)誤的。( ) 5在Turbo C中,下面的定義和語(yǔ)句是合法的:file *fp;fp=fopen(a.txt,r);( )6若有定義:char s china;則Turbo C系統(tǒng)為數(shù)組s開辟6個(gè)字節(jié)的內(nèi)存單元。( )7若有定義和語(yǔ)句:int a333,5,8,9,12,35,i,sum=0;for(i=0;i3;i+) sum+=ai2-i;則sum=21。( )8若有定義和語(yǔ)句:struct student int num; char name10; float score; s5=1,lili,98.5,9,xiaoh

20、ua,66,*p=s;printf(%d,*p+);輸出結(jié)果是1。( )9在程序中定義了一個(gè)結(jié)構(gòu)體類型后,可以多次用它來(lái)定義具有該類型的變量。( ) 10在Turbo C中,此定義和語(yǔ)句是合法的:enum aa a5,b,cbb;bb=(enum aa)5;( )三 寫出下列程序的運(yùn)行結(jié)果(36分,每小題6分)1.main( ) int i=29,j=6,k=2,s; s=i+i/j%k-9;printf(“s=%dn”,s);2.main( ) int x=31,y=2,s=0;do s-=x*y; x+=2; y-=3; while( x%3=0); printf(“x=%dty=%dts

21、=%dn”,x,y,s);3.main( ) int a610,20,30,40,50,60,i; invert(a,0,5); for(i=0;i6;i+) printf(“%d,”,ai); printf(“n”);invert(int s ,int i,int j) int t; if(ij) invert(s,i+1j-1); t=si;si=sj;sj=t; 4.#includemain() char str =“The C program”,c;int i;for(i=2;(c=stri)!=0;i+) switch(c) case g: +i; break;case o: con

22、tinue;default: printf(“%c”,c); continue;printf(“*”);printf(“n”);5.struct w char low; char high; ; union u struct w byte; short word; uw; main( ) int result; uw.word=0x1234;printf(“word value:%04xn”,uw.word); printf(“high byte:%02xn”,uw.byte.high); printf(“l(fā)ow byte:%02xn”,uw.byte.low); uw.byte.low=0x

23、74; printf(“word value:%04xn”,uw.word); result=uw.word+0x2a34; printf(“the result:%04xn”,result); 6main() char *s2=“I love China!”,*s1=&s2; char *s3,c,*s4=“w”; s3=&c; *s3=H; s2=s2+2; printf(“%st%ct%st%cn”,s2,*s3,s4,*s1); 四 閱讀下列程序,在 處填入適當(dāng)內(nèi)容,使程序完整(20分,每個(gè)空2分)1. 百馬百擔(dān)問題:有100匹馬,馱100擔(dān)貨,大馬馱3擔(dān),中馬馱2擔(dān),兩匹小馬馱1擔(dān),

24、問大、中、小馬各多少匹? main( ) int hb,hm,hl,n=0; for(hb=0;hb=100;hb+= (1) ) for(hm=0;hm=100-hb;hm+= (2) ) hl=100-hb- (3) ; if(hb/3+hm/2+2* (3) =100) n+; printf(hb=%d,hm=%d,hl=%dn,hb/3,hm/2,2*hl); printf(n=%dn,n); 2.用“起泡法”對(duì)輸入的10個(gè)字符排序后按從小到大的次序輸出。 #define N 10 char strN; main() int i,flag; for(flag=1;flag=1;) sc

25、anf(%s,str); flag=0; printf(n); sort(_(4)_); for(i=0;iN;i+) printf(%c,stri); printf(n); sort(char strN) int i,j; char t; for(j=1;jN;j+) for(i=0;(istri+1) t=stri; _(5)_; _(6)_; 3.以下程序是一個(gè)函數(shù),功能是求二階矩陣(m行n列矩陣)的所有靠外側(cè)的各元素值之和。(本程序中二階矩陣用一維數(shù)組來(lái)表示。) 例如,矩陣為: 3 0 0 3 2 5 7 3 1 0 4 2 則所有靠外側(cè)的各元素值之和為3+0+0+3+2+3+1+0+4+2=18。 add(int m,int n,int arr) int i,j,sum=0; for(i=0;im;i=i+m-1) for(j=0;jn;j+) sum=sum+ (7) ; for(j=0;jn;j=j+n-1) for(i=1; (8) ;i+) sum=sum+arri*n+j; return(sum); 4.用指針作函數(shù)參數(shù),編程序求一維數(shù)組中的最大和

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論