C語(yǔ)言程序設(shè)計(jì)理論試題庫(kù)及答案(易錯(cuò)題)_第1頁(yè)
C語(yǔ)言程序設(shè)計(jì)理論試題庫(kù)及答案(易錯(cuò)題)_第2頁(yè)
C語(yǔ)言程序設(shè)計(jì)理論試題庫(kù)及答案(易錯(cuò)題)_第3頁(yè)
C語(yǔ)言程序設(shè)計(jì)理論試題庫(kù)及答案(易錯(cuò)題)_第4頁(yè)
C語(yǔ)言程序設(shè)計(jì)理論試題庫(kù)及答案(易錯(cuò)題)_第5頁(yè)
已閱讀5頁(yè),還剩8頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

C語(yǔ)言程序設(shè)計(jì)理論試題庫(kù)第一部分單選題(50題)1、以下二維數(shù)組定義中,行數(shù)為2的是?()

A.inta[2][3];

B.inta[][3]={1,2,3,4,5,6};

C.inta[2][3]={1,2,3,4,5};

D.以上都是

【答案】:答案解析:A行數(shù)2,B初始化6個(gè)元素(3列×2行),C行數(shù)2,故選D。2、以下函數(shù)定義錯(cuò)誤的是?()

A.intfun(inta,intb){returna+b;}

B.voidfun(){inta=5;printf("%d",a);}

C.intfun(){inta=3;returna;}

D.voidfun(inta){returna;}

【答案】:答案解析:D返回值類型void,不能return表達(dá)式a,語(yǔ)法錯(cuò)誤,故選D。3、以下關(guān)于指針的說(shuō)法正確的是?()

A.指針可用于實(shí)現(xiàn)多返回值函數(shù)

B.指針可提高程序效率

C.指針可用于動(dòng)態(tài)內(nèi)存分配

D.以上都正確

【答案】:答案解析:指針的核心用途包括多返回值、高效訪問(wèn)、動(dòng)態(tài)內(nèi)存分配,故選D。4、指針作為函數(shù)返回值時(shí),不能返回?()

A.靜態(tài)局部變量的地址

B.全局變量的地址

C.動(dòng)態(tài)分配內(nèi)存的地址

D.局部變量的地址

【答案】:答案解析:局部變量在函數(shù)調(diào)用結(jié)束后釋放,返回其地址會(huì)導(dǎo)致野指針,故選D。5、若inti=0;執(zhí)行for(;;){if(i==4)break;printf("%d",i);i++;}輸出結(jié)果是?()

A.0123

B.01234

C.無(wú)限循環(huán)

D.無(wú)輸出

【答案】:答案解析:for(;;)是無(wú)限循環(huán),i=4時(shí)break,輸出0123,故選A。6、函數(shù)定義的格式是?()

A.返回類型函數(shù)名(參數(shù)列表){函數(shù)體}

B.函數(shù)名(返回類型,參數(shù)列表){函數(shù)體}

C.函數(shù)名(參數(shù)列表)返回類型{函數(shù)體}

D.返回類型函數(shù)名{參數(shù)列表,函數(shù)體}

【答案】:答案解析:函數(shù)定義標(biāo)準(zhǔn)格式為“返回類型函數(shù)名(參數(shù)列表){函數(shù)體}”,故選A。7、以下指針運(yùn)算中,結(jié)果為指針的是?()

A.*p

B.p+1

C.&a

D.B和C

【答案】:答案解析:p+1是指針偏移,&a是取地址,結(jié)果均為指針;*p是解引用(獲取值),故選D。8、以下函數(shù)定義中,參數(shù)為兩個(gè)int類型的是?()

A.voidfun(inta,floatb){}

B.voidfun(inta,intb){}

C.voidfun(floata,intb){}

D.voidfun(inta,charb){}

【答案】:答案解析:B中兩個(gè)參數(shù)均為int類型,其余選項(xiàng)參數(shù)類型不匹配,故選B。9、以下if語(yǔ)句中,條件表達(dá)式正確的是?()

A.if(x=5)printf("yes");

B.if(x==5)printf("yes");

C.if(x=5;)printf("yes");

D.if(x==5;)printf("yes");

【答案】:答案解析:if條件需是判斷表達(dá)式(==),A是賦值,C、D多加分號(hào),故選B。10、以下哪個(gè)條件表達(dá)式表示“x大于等于5且小于等于10”?()

A.5<=x<=10

B.x>=5&&x<=10

C.x>=5||x<=10

D.5<=x&&<=10

【答案】:答案解析:C語(yǔ)言中連續(xù)比較不合法,需用邏輯與連接兩個(gè)判斷,A語(yǔ)法錯(cuò)誤,C邏輯錯(cuò)誤,D語(yǔ)法錯(cuò)誤,故選B。11、以下函數(shù)返回值類型為int的是?()

A.voidfun(){return;}

B.intfun(){return3.14;}

C.floatfun(){return5;}

D.charfun(){return'a';}

【答案】:答案解析:A返回值類型void(不能return表達(dá)式),B返回類型int(3.14強(qiáng)制轉(zhuǎn)為3),C返回類型float,D返回類型char,故選B。12、邏輯表達(dá)式!5的結(jié)果是?()

A.0

B.1

C.5

D.真

【答案】:答案解析:5為真,!是邏輯非,真變假(0),故選A。13、do-while循環(huán)的特點(diǎn)是?()

A.先判斷條件,后執(zhí)行循環(huán)體

B.先執(zhí)行循環(huán)體,后判斷條件

C.條件不滿足時(shí)也不執(zhí)行循環(huán)體

D.只能執(zhí)行一次

【答案】:答案解析:do-while是“先執(zhí)行后判斷”,至少執(zhí)行一次循環(huán)體,for和while是“先判斷后執(zhí)行”,故選B。14、若inta[5];則數(shù)組a的元素個(gè)數(shù)是?()

A.4

B.5

C.6

D.不確定

【答案】:答案解析:數(shù)組a[5]定義5個(gè)元素(下標(biāo)0-4),故選B。15、以下數(shù)組定義中,長(zhǎng)度為5的是?()

A.inta[5];

B.inta[]={1,2,3,4,5};

C.charstr[]="abcd";

D.以上都是

【答案】:答案解析:A長(zhǎng)度5,B長(zhǎng)度5,C字符串"abcd"含\0共5個(gè)字符,故選D。16、若inta=6;執(zhí)行a/=3;后a的值是?()

A.2

B.3

C.6

D.18

【答案】:答案解析:a/=3等價(jià)于a=a/3=6/3=2,故選A。17、函數(shù)參數(shù)的默認(rèn)值在______指定?()

A.函數(shù)定義時(shí)

B.函數(shù)聲明時(shí)

C.函數(shù)調(diào)用時(shí)

D.C語(yǔ)言不支持默認(rèn)參數(shù)

【答案】:答案解析:標(biāo)準(zhǔn)C語(yǔ)言不支持函數(shù)參數(shù)默認(rèn)值(C++支持),故選D。18、若inta=8;執(zhí)行if(a%4==0)a=a/2;elsea=a+2;后a的值是?()

A.4

B.10

C.8

D.6

【答案】:答案解析:8%4=0,條件為真,a=8/2=4,故選A。19、函數(shù)參數(shù)傳遞中,值傳遞的特點(diǎn)是?()

A.形參修改影響實(shí)參

B.形參是實(shí)參的副本

C.傳遞的是變量地址

D.用于數(shù)組傳參

【答案】:答案解析:值傳遞時(shí)形參是實(shí)參的拷貝,修改形參不影響實(shí)參,地址傳遞才影響實(shí)參,故選B。20、do-while循環(huán)的語(yǔ)法格式正確的是?()

A.do語(yǔ)句;while(條件);

B.do{語(yǔ)句}while(條件)

C.do語(yǔ)句while(條件);

D.do;語(yǔ)句;while(條件);

【答案】:答案解析:do-while格式為“do循環(huán)體;while(條件);”,循環(huán)體可是單條語(yǔ)句或代碼塊,B缺少分號(hào),C缺少分號(hào),D循環(huán)體為空,故選A。21、putchar()函數(shù)的功能是?()

A.讀取一個(gè)字符

B.輸出一個(gè)字符

C.讀取字符串

D.輸出字符串

【答案】:答案解析:putchar()用于輸出單個(gè)字符,getchar()讀取單個(gè)字符,puts()輸出字符串,故選B。22、以下數(shù)組初始化錯(cuò)誤的是?()

A.inta[5]={0};

B.inta[]={1,2,3};

C.inta[5]={1,2,3};

D.inta[5]={1,2,3,4,5,6};

【答案】:答案解析:D初始化元素個(gè)數(shù)超數(shù)組長(zhǎng)度(5),編譯報(bào)錯(cuò),A、B、C正確,故選D。23、以下switch語(yǔ)句中,default的作用是?()

A.匹配所有case

B.匹配除case外的所有情況

C.終止switch語(yǔ)句

D.無(wú)實(shí)際作用

【答案】:答案解析:default用于匹配所有case未覆蓋的情況,可選且位置靈活,故選B。24、以下轉(zhuǎn)義字符表示換行的是?()

A.\t

B.\n

C.\

D.\r

【答案】:答案解析:\t是制表符,\n是換行符,\是反斜杠,\r是回車符,故選B。25、若inta=5,*p=&a;則&*p的值是?()

A.5

B.&a

C.p

D.無(wú)定義

【答案】:答案解析:&*p等價(jià)于p,即&a(a的地址),故選B。26、以下switch語(yǔ)句中,default的位置可以在?()

A.所有case之前

B.所有case之后

C.兩個(gè)case之間

D.以上都可以

【答案】:答案解析:default位置靈活,可在case前、后或中間,不影響執(zhí)行邏輯,故選D。27、以下關(guān)于指針的說(shuō)法錯(cuò)誤的是?()

A.指針可指向變量、數(shù)組、函數(shù)

B.指針可進(jìn)行算術(shù)運(yùn)算(如++、--)

C.指針可指向自身

D.指針可用于動(dòng)態(tài)內(nèi)存分配

【答案】:答案解析:指針不能指向自身(類型不匹配),A、B、D說(shuō)法正確,故選C。28、函數(shù)中局部變量的作用域是?()

A.整個(gè)程序

B.函數(shù)內(nèi)部

C.函數(shù)外部

D.所有函數(shù)

【答案】:答案解析:局部變量定義在函數(shù)內(nèi),僅在函數(shù)內(nèi)部有效,故選B。29、數(shù)組名作為函數(shù)參數(shù)時(shí),函數(shù)形參的正確寫法是?()

A.inta[]

B.int*a

C.inta[5]

D.以上都是

【答案】:答案解析:數(shù)組形參可寫為inta[]、int*a(指針)、inta[5](長(zhǎng)度可忽略),本質(zhì)均為指針,故選D。30、若inti=0,s=0;執(zhí)行do{s+=i;i++;}while(i<5);后s的值是?()

A.10

B.15

C.5

D.0

【答案】:答案解析:do-while累加0+1+2+3+4=10,s=10,故選A。31、若inta=2,b=4;執(zhí)行if(a==b)a=0;elseb=0;后a和b的值分別是?()

A.0,4

B.2,0

C.0,0

D.2,4

【答案】:答案解析:a==b為假,執(zhí)行else,b=0,a保持2,故選B。32、函數(shù)聲明的作用是?()

A.告訴編譯器函數(shù)的存在

B.實(shí)現(xiàn)函數(shù)功能

C.分配函數(shù)內(nèi)存

D.調(diào)用函數(shù)

【答案】:答案解析:函數(shù)聲明用于向編譯器說(shuō)明函數(shù)名、參數(shù)、返回類型(確保調(diào)用正確),定義才是實(shí)現(xiàn)功能,故選A。33、若intx=2;執(zhí)行switch(x){case1:printf("a");case2:printf("b");case3:printf("c");}輸出結(jié)果是?()

A.b

B.bc

C.abc

D.無(wú)輸出

【答案】:答案解析:x=2匹配case2,無(wú)break,穿透到case3,輸出bc,故選B。34、若floatf=5.9;強(qiáng)制轉(zhuǎn)換為整型的表達(dá)式是?()

A.int(f)

B.(int)f

C.intf

D.(float)f

【答案】:答案解析:強(qiáng)制類型轉(zhuǎn)換格式為(目標(biāo)類型)變量,(int)f結(jié)果為5(取整數(shù)部分),故選B。35、轉(zhuǎn)義字符\0的作用是?()

A.表示空格

B.表示制表符

C.字符串結(jié)束標(biāo)志

D.換行

【答案】:答案解析:\0ASCII碼為0,是字符串默認(rèn)結(jié)束標(biāo)志,不計(jì)入長(zhǎng)度,故選C。36、以下if-else語(yǔ)句的語(yǔ)法錯(cuò)誤是?()

A.if(x>0)printf("a");elseprintf("b");

B.if(x>0){printf("a");}else{printf("b");}

C.if(x>0)printf("a");else;printf("b");

D.if(x>0){printf("a");}elseprintf("b");

【答案】:答案解析:else后不能直接加分號(hào)(否則else無(wú)作用),C中else;后printf獨(dú)立執(zhí)行,故選C。37、若inti=0;執(zhí)行for(i=0;i<5;i++){if(i==2)continue;printf("%d",i);}輸出結(jié)果是?()

A.0134

B.01234

C.01

D.無(wú)限循環(huán)

【答案】:答案解析:i=2時(shí)執(zhí)行continue,跳過(guò)printf,輸出0134,故選A。38、函數(shù)調(diào)用時(shí),實(shí)參和形參的個(gè)數(shù)必須?()

A.相等

B.實(shí)參多于形參

C.形參多于實(shí)參

D.無(wú)要求

【答案】:答案解析:函數(shù)調(diào)用時(shí)實(shí)參和形參個(gè)數(shù)、類型需匹配,否則編譯錯(cuò)誤,故選A。39、C語(yǔ)言中,宏定義的預(yù)處理命令關(guān)鍵字是?()

A.include

B.define

C.ifdef

D.endif

【答案】:答案解析:#define用于宏定義,#include用于包含頭文件,#ifdef/endif是條件編譯,故選B。40、以下指針與函數(shù)的關(guān)系正確的是?()

A.函數(shù)名是函數(shù)的地址

B.函數(shù)指針可指向函數(shù)

C.可通過(guò)函數(shù)指針調(diào)用函數(shù)

D.以上都正確

【答案】:答案解析:A、B、C均是函數(shù)與指針的基本關(guān)系,故選D。41、函數(shù)調(diào)用的一般格式是?()

A.函數(shù)名(實(shí)參列表);

B.函數(shù)名實(shí)參列表;

C.返回類型函數(shù)名(實(shí)參列表);

D.函數(shù)名=實(shí)參列表;

【答案】:答案解析:函數(shù)調(diào)用格式為“函數(shù)名(實(shí)參列表);”,實(shí)參與形參匹配,故選A。42、以下switch語(yǔ)句語(yǔ)法錯(cuò)誤的是?()

A.switch(x){case1:printf("1");break;case2:printf("2");break;}

B.switch(x){case1:printf("1");case2:printf("2");}

C.switch(x){case1:;break;case2:printf("2");}

D.switch(x){case1:printf("1");break;case1:printf("2");break;}

【答案】:答案解析:case后常量不能重復(fù),D中case1重復(fù),編譯報(bào)錯(cuò),故選D。43、以下for循環(huán)的語(yǔ)法錯(cuò)誤是?()

A.for(inti=0;i<5;i++)printf("%d",i);

B.for(i=0;i<5;i++)printf("%d",i);

C.for(;i<5;i++)printf("%d",i);

D.for(i=0;;i++)printf("%d",i);

【答案】:答案解析:B中i未定義(需先聲明inti;),A(C99標(biāo)準(zhǔn)允許循環(huán)內(nèi)定義)、C(初始化省略)、D(條件省略,無(wú)限循環(huán))語(yǔ)法均正確,故選B。44、定義整型變量x、y并均賦值10的語(yǔ)句是?()

A.intx=y=10;

B.intx=10,y=10;

C.intx=10;y=10;

D.intx=10;inty=10;

【答案】:答案解析:同一行定義多個(gè)變量用逗號(hào)分隔,A不能連續(xù)賦值,C缺少int,D是兩行定義,故選B。45、以下哪個(gè)數(shù)據(jù)類型的占用字節(jié)數(shù)最大?()

A.char

B.short

C.int

D.double

【答案】:答案解析:char(1字節(jié))、short(2字節(jié))、int(4字節(jié))、double(8字節(jié)),故選D。46、若inta[5

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論