版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
數(shù)組c語言考試題庫第一部分單選題(50題)1、以下關(guān)于數(shù)組越界的說法正確的是?()
A.編譯時(shí)會報(bào)錯(cuò)
B.運(yùn)行時(shí)一定會崩潰
C.可能導(dǎo)致程序錯(cuò)誤
D.無影響
【答案】:答案解析:數(shù)組越界屬于未定義行為,編譯時(shí)不報(bào)錯(cuò),運(yùn)行時(shí)可能正?;虮罎ⅲ蔬xC。2、以下switch語句中,default的執(zhí)行時(shí)機(jī)是?()
A.所有case都不匹配時(shí)
B.第一個(gè)case不匹配時(shí)
C.最后一個(gè)case不匹配時(shí)
D.任何時(shí)候
【答案】:答案解析:default僅在所有case都不匹配時(shí)執(zhí)行,故選A。3、以下數(shù)組定義錯(cuò)誤的是?()
A.inta[0];
B.inta[5];
C.inta[]={1,2,3};
D.inta[5]={1,2,3};
【答案】:答案解析:數(shù)組長度不能為0,編譯報(bào)錯(cuò),其余正確,故選A。4、以下函數(shù)參數(shù)傳遞方式中,能修改實(shí)參值的是?()
A.值傳遞
B.地址傳遞
C.都能
D.都不能
【答案】:答案解析:值傳遞修改的是形參(副本),不影響實(shí)參;地址傳遞通過指針修改實(shí)參值,故選B。5、以下關(guān)于main函數(shù)的說法正確的是?()
A.main函數(shù)可無返回值
B.main函數(shù)可帶參數(shù)
C.main函數(shù)是程序入口
D.以上都正確
【答案】:答案解析:main函數(shù)可聲明為void(無返回值),可帶argc/argv參數(shù),是程序唯一入口,故選D。6、若intx=10;則表達(dá)式x%3的結(jié)果是?()
A.1
B.2
C.3
D.0
【答案】:答案解析:%是取余運(yùn)算符,10除以3商3余1,故選A。7、以下if-else語句中,代碼塊正確的是?()
A.if(x>0)printf("a");printf("b");elseprintf("c");
B.if(x>0){printf("a");printf("b");}elseprintf("c");
C.if(x>0)printf("a");{printf("b");}elseprintf("c");
D.if(x>0)printf("a");printf("b");else{printf("c");}
【答案】:答案解析:else需與最近的if匹配,A、C、D中else前有獨(dú)立printf,語法錯(cuò)誤,B用{}包裹代碼塊正確,故選B。8、若inta[5]={10,20,30,40,50};則a[2]的值是?()
A.10
B.20
C.30
D.40
【答案】:答案解析:數(shù)組下標(biāo)從0開始,a[2]是第三個(gè)元素30,故選C。9、以下哪個(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。10、以下函數(shù)聲明正確的是?()
A.voidfun();
B.voidfun(inta);
C.intfun(int);
D.以上都正確
【答案】:答案解析:函數(shù)聲明可省略形參名(只留類型),A、B、C均符合語法,故選D。11、若inti=0;執(zhí)行while(1){if(i==3)break;printf("%d",i);i++;}輸出結(jié)果是?()
A.012
B.0123
C.無限循環(huán)
D.無輸出
【答案】:答案解析:while(1)是無限循環(huán),i=3時(shí)break,輸出012,故選A。12、以下循環(huán)中,用于計(jì)算1到10的乘積的是?()
A.s=0;for(i=1;i<=10;i++)s+=i;
B.s=1;for(i=1;i<=10;i++)s*=i;
C.s=0;while(i<=10){s*=i;i++;}
D.s=1;do{s+=i;i++;}while(i<=10);
【答案】:答案解析:乘積初始值為1,累加初始值為0,B的邏輯是12...*10,正確,故選B。13、以下哪個(gè)函數(shù)用于讀取字符?()
A.putchar()
B.gets()
C.getchar()
D.printf()
【答案】:答案解析:getchar()讀取單個(gè)字符,puts()輸出字符串,gets()讀取字符串(已淘汰),故選C。14、C語言中,宏定義的預(yù)處理命令關(guān)鍵字是?()
A.include
B.define
C.ifdef
D.endif
【答案】:答案解析:#define用于宏定義,#include用于包含頭文件,#ifdef/endif是條件編譯,故選B。15、以下關(guān)于動(dòng)態(tài)內(nèi)存分配的說法正確的是?()
A.malloc函數(shù)用于動(dòng)態(tài)分配內(nèi)存,返回void*
B.free函數(shù)用于釋放動(dòng)態(tài)分配的內(nèi)存
C.動(dòng)態(tài)分配的內(nèi)存需手動(dòng)釋放,避免內(nèi)存泄漏
D.以上都正確
【答案】:答案解析:A、B、C均是動(dòng)態(tài)內(nèi)存分配的核心規(guī)則,故選D。16、若inti=0,s=0;執(zhí)行for(i=1;i<=4;i++)s+=i;后s的值是?()
A.10
B.9
C.8
D.7
【答案】:答案解析:累加1+2+3+4=10,s=10,故選A。17、若inti=0;執(zhí)行do{i++;printf("%d",i);}while(i<3);輸出結(jié)果是?()
A.123
B.012
C.12
D.無輸出
【答案】:答案解析:do-while先執(zhí)行,i從1到3,輸出123,故選A。18、C語言中基本數(shù)據(jù)類型不包括以下哪項(xiàng)?()
A.char
B.int
C.float
D.array
【答案】:答案解析:基本數(shù)據(jù)類型為char、int、float、double,array是數(shù)組(構(gòu)造類型),故選D。19、以下轉(zhuǎn)義字符表示換行的是?()
A.\t
B.\n
C.\
D.\r
【答案】:答案解析:\t是制表符,\n是換行符,\是反斜杠,\r是回車符,故選B。20、若inti=1;執(zhí)行while(i<=3){printf("%d",i);i++;}輸出結(jié)果是?()
A.123
B.1234
C.012
D.無輸出
【答案】:答案解析:i初始1,滿足i<=3,執(zhí)行3次,輸出123,i最終4,循環(huán)結(jié)束,故選A。21、C語言中,語句結(jié)束的標(biāo)志是?()
A.逗號
B.分號
C.冒號
D.句號
【答案】:答案解析:C語言單條語句以分號(;)結(jié)尾,復(fù)合語句用{}包裹,故選B。22、以下for循環(huán)的循環(huán)次數(shù)是?()for(inti=2;i<=8;i+=2)
A.3次
B.4次
C.5次
D.6次
【答案】:答案解析:i取值2、4、6、8,共4次,故選B。23、若inta=4;執(zhí)行if(a--<4)printf("A");elseprintf("B");輸出結(jié)果是?()
A.A
B.B
C.AB
D.無輸出
【答案】:答案解析:a--是后置自減,條件判斷時(shí)a=4,4<4為假,執(zhí)行else(輸出B),后a變?yōu)?,故選B。24、以下關(guān)于循環(huán)語句的說法錯(cuò)誤的是?()
A.for循環(huán)三個(gè)表達(dá)式均可省略
B.while循環(huán)先判斷后執(zhí)行
C.do-while循環(huán)至少執(zhí)行一次
D.continue可用于switch語句
【答案】:答案解析:continue僅用于循環(huán)語句,不能用于switch,A、B、C說法正確,故選D。25、若inti=5,s=0;執(zhí)行while(i>0){s+=i;i--;}后s的值是?()
A.15
B.10
C.5
D.0
【答案】:答案解析:累加5+4+3+2+1=15,s=15,故選A。26、數(shù)組作為函數(shù)參數(shù)時(shí),函數(shù)形參不能是?()
A.inta[]
B.int*a
C.inta[5]
D.inta
【答案】:答案解析:D中inta是普通變量,不能接收數(shù)組名(地址),A、B、C均可作為數(shù)組形參,故選D。27、以下for循環(huán)的語法錯(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(條件省略,無限循環(huán))語法均正確,故選B。28、若inta[5]={10,20,30,40,50},p=a+3;則p的值是?()
A.30
B.40
C.50
D.無定義
【答案】:答案解析:a+3指向a[3],*p=40,故選B。29、定義單精度浮點(diǎn)型變量y并賦值2.718的語句是?()
A.doubley=2.718;
B.floaty=2.718f;
C.floaty=2.718;
D.inty=2.718;
【答案】:答案解析:float是單精度,需加f后綴(否則默認(rèn)double),double是雙精度,故選B。30、若inta[3]={1,2,3},p=a;則(p+2)的值是?()
A.1
B.2
C.3
D.無定義
【答案】:答案解析:p+2指向a[2],解引用*(p+2)=a[2]=3,故選C。31、以下哪個(gè)if語句的條件是“x是偶數(shù)且x大于10”?()
A.if(x%2==0&&x>10)
B.if(x%2=0&&x>10)
C.if(x%2==0||x>10)
D.if(x%2=0||x>10)
【答案】:答案解析:偶數(shù)判斷用x%2==0,邏輯與用&&,B是賦值,C、D是邏輯或,故選A。32、以下數(shù)組定義錯(cuò)誤的是?()
A.inta[5];
B.inta[5]={1,2,3,4,5};
C.inta[5]={1,2,3,4,5,6};
D.inta[]={1,2,3,4,5};
【答案】:答案解析:C初始化元素超5個(gè),編譯報(bào)錯(cuò),其余正確,故選C。33、若inta=7,*p=&a;執(zhí)行++*p;后a的值是?()
A.7
B.8
C.&a
D.無定義
【答案】:答案解析:++*p等價(jià)于++(*p),先解引用取a的值,再加1(a=8),故選B。34、若charstr[10]="abcde";則str[5]的值是?()
A.'e'
B.'\0'
C.隨機(jī)值
D.無定義
【答案】:答案解析:字符串自動(dòng)在末尾加\0,str[5]是\0,故選B。35、若inti=0;執(zhí)行do{printf("%d",i);i++;}while(i<0);輸出結(jié)果是?()
A.0
B.無輸出
C.無限循環(huán)
D.01
【答案】:答案解析:do-while先執(zhí)行一次(輸出0,i=1),判斷i<0為假,循環(huán)結(jié)束,故選A。36、若charstr[]="helloworld";則字符串長度是?()
A.10
B.11
C.12
D.13
【答案】:答案解析:"helloworld"含11個(gè)字符(不含\0),長度為11,故選B。37、以下數(shù)組初始化正確的是?()
A.charstr[]="hello";
B.charstr[5]="hello";
C.charstr[]={'h','e','l','l','o'};
D.charstr[5]={'h','e','l','l','o','\0'};
【答案】:答案解析:A字符串自動(dòng)加\0,B長度5不足以存hello(含\0共6個(gè)字符),C無\0(字符串不完整),D長度5超,故選A。38、以下哪個(gè)函數(shù)用于輸出字符串?()
A.putchar()
B.printf()
C.gets()
D.scanf()
【答案】:答案解析:printf()可輸出字符串(如printf("hello");),putchar()輸出單個(gè)字符,故選B。39、以下if語句中,邏輯非運(yùn)算符使用正確的是?()
A.if(!x)printf("yes");
B.if(!x==0)printf("yes");
C.if(!(x>0))printf("yes");
D.A和C
【答案】:答案解析:!x表示“x為假(0)”,!(x>0)表示“x不大于0”,均正確;B中!x==0等價(jià)于x!=0,邏輯不同,故選D。40、以下函數(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。41、以下哪個(gè)不是C語言的關(guān)鍵字?()
A.if
B.else
C.then
D.for
【答案】:答案解析:then不是C語言關(guān)鍵字,if(條件)、else(否則)、for(循環(huán))均是,故選C。42、以下關(guān)于指針的說法正確的是?()
A.指針可用于實(shí)現(xiàn)多返回值函數(shù)
B.指針可提高程序效率
C.指針可用于動(dòng)態(tài)內(nèi)存分配
D.以上都正確
【答案】:答案解析:指針的核心用途包括多返回值、高效訪問、動(dòng)態(tài)內(nèi)存分配,故選D。43、若intx=3,y=5;執(zhí)行if(x>y)printf("x大");elseif(x==y)printf("相等");elseprintf("y大");輸出結(jié)果是?()
A.x大
B.相等
C.y大
D.無輸出
【答案】:答案解析:x=3<y=5,執(zhí)行else,輸出y大,故選C。44、若inta=3,b=5;執(zhí)行以下代碼后輸出結(jié)果是?()if(a>b)printf("A");elseprintf("B");
A.A
B.B
C.AB
D.無輸出
【答案】:答案解析:a=3<b=5,條件為假,執(zhí)行else分支,輸出B,故選B。45、以下switch語句中,case穿透的情況是?()
A.case后
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年高職光電信息科學(xué)與工程(光電信息)試題及答案
- 2025年中職會計(jì)(財(cái)務(wù)會計(jì)基礎(chǔ))試題及答案
- 2025年高職能源技術(shù)(技術(shù)實(shí)操訓(xùn)練)試題及答案
- 2025年中職園藝設(shè)施管理應(yīng)用(應(yīng)用技術(shù))試題及答案
- 2025年高職城市軌道交通運(yùn)營服務(wù)(票務(wù)管理技巧)試題及答案
- 2025年中職城市軌道交通車輛技術(shù)(城軌車輛維護(hù))試題及答案
- 2025年高職(健康管理)健康評估試題及答案
- 2025年高職供用電技術(shù)(供用電管理)試題及答案
- 2025年高職通信(通信技術(shù)基礎(chǔ))試題及答案
- 2025年高職(藥學(xué))藥物合成基礎(chǔ)試題及答案
- 2024-2025學(xué)年天津市和平區(qū)高三上學(xué)期1月期末英語試題(解析版)
- (康德一診)重慶市2025屆高三高三第一次聯(lián)合診斷檢測 地理試卷(含答案詳解)
- 真需求-打開商業(yè)世界的萬能鑰匙
- 傷寒論398條條文
- 管理人員應(yīng)懂財(cái)務(wù)知識
- ISO9001-2015質(zhì)量管理體系版標(biāo)準(zhǔn)
- 翻建房屋四鄰協(xié)議書范本
- 輸煤棧橋彩鋼板更換施工方案
- PRP注射治療膝關(guān)節(jié)炎
- 江西省景德鎮(zhèn)市2024-2025學(xué)年七年級上學(xué)期期中地理試卷(含答案)
- 財(cái)務(wù)經(jīng)理年終總結(jié)2024
評論
0/150
提交評論