版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
軟件技術(shù)C語言基礎(chǔ)知識練習(xí)題第一部分單選題(50題)1、以下字符串?dāng)?shù)組定義正確的是?()
A.charstr[5][10]={"hello","world"};
B.charstr[5][]={"hello","world"};
C.charstr[][10]={"hello","world","!"};
D.charstr[5][10]={"hello","world","!"};
【答案】:答案解析:B第二維不能省略,A、C、D均正確?D最完整(5行10列,初始化3個(gè)字符串),故選D。2、若inta=5,p=&a;執(zhí)行p=8;后a的值是?()
A.5
B.8
C.&a
D.無定義
【答案】:答案解析:*p=8通過指針修改指向變量a的值,a變?yōu)?,故選B。3、以下哪個(gè)for循環(huán)是無限循環(huán)?()
A.for(i=0;i<5;i++)
B.for(;;)
C.for(i=0;i<5;i--);
D.for(i=5;i>0;i--)
【答案】:答案解析:for循環(huán)三個(gè)表達(dá)式均省略時(shí),條件恒為真,是無限循環(huán),A執(zhí)行5次,C、D初始條件不滿足(執(zhí)行0次),故選B。4、若intx=0;執(zhí)行if(x)printf("A");elseprintf("B");輸出結(jié)果是?()
A.A
B.B
C.AB
D.無輸出
【答案】:答案解析:x=0為假,執(zhí)行else分支,輸出B,故選B。5、函數(shù)返回值的類型由______決定?()
A.return語句中的表達(dá)式類型
B.函數(shù)定義時(shí)的返回類型
C.函數(shù)調(diào)用時(shí)的參數(shù)類型
D.編譯器默認(rèn)類型
【答案】:答案解析:函數(shù)返回類型在定義時(shí)指定,return表達(dá)式類型需與返回類型匹配(不匹配則強(qiáng)制轉(zhuǎn)換),故選B。6、轉(zhuǎn)義字符\的作用是?()
A.表示反斜杠
B.表示換行
C.表示空格
D.表示制表符
【答案】:答案解析:\用于表示字符反斜杠(\),避免與轉(zhuǎn)義字符沖突,故選A。7、以下哪個(gè)賦值語句是正確的?()
A.inta=5;
B.a=5;
C.inta=b=5;
D.a=b=5;
【答案】:答案解析:B、D未定義變量,C不能連續(xù)賦值定義,A定義并賦值正確,故選A。8、以下關(guān)于指針的說法正確的是?()
A.指針可用于遍歷數(shù)組
B.指針可用于字符串操作
C.指針可用于函數(shù)參數(shù)傳遞
D.以上都正確
【答案】:答案解析:指針在數(shù)組遍歷、字符串處理、參數(shù)傳遞中均有核心作用,故選D。9、若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。10、函數(shù)的形參在______時(shí)分配內(nèi)存?()
A.函數(shù)定義
B.函數(shù)聲明
C.函數(shù)調(diào)用
D.程序編譯
【答案】:答案解析:形參是局部變量,函數(shù)調(diào)用時(shí)分配內(nèi)存,調(diào)用結(jié)束釋放,故選C。11、函數(shù)調(diào)用時(shí),實(shí)參的順序必須與形參的順序?()
A.一致
B.相反
C.無關(guān)
D.部分一致
【答案】:答案解析:實(shí)參和形參需按順序一一對應(yīng)(類型、個(gè)數(shù)、順序匹配),否則可能導(dǎo)致邏輯錯(cuò)誤,故選A。12、以下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。13、C語言中,宏定義的預(yù)處理命令關(guān)鍵字是?()
A.include
B.define
C.ifdef
D.endif
【答案】:答案解析:#define用于宏定義,#include用于包含頭文件,#ifdef/endif是條件編譯,故選B。14、以下關(guān)于函數(shù)的說法正確的是?()
A.函數(shù)可提高代碼復(fù)用性
B.函數(shù)可簡化程序結(jié)構(gòu)
C.函數(shù)可便于維護(hù)
D.以上都正確
【答案】:答案解析:函數(shù)的核心優(yōu)勢是復(fù)用、簡化結(jié)構(gòu)、便于維護(hù),故選D。15、以下關(guān)于main函數(shù)的說法錯(cuò)誤的是?()
A.程序從main開始執(zhí)行
B.main函數(shù)可帶參數(shù)
C.main函數(shù)必須有返回值
D.main函數(shù)可調(diào)用其他函數(shù)
【答案】:答案解析:main函數(shù)可聲明為void(無返回值),C說法錯(cuò)誤,A、B、D正確,故選C。16、以下哪個(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。17、若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。18、若intx=6;執(zhí)行以下代碼后輸出結(jié)果是?()if(x<5){printf("A");}elseif(x<8){printf("B");}else{printf("C");}
A.A
B.B
C.C
D.無輸出
【答案】:答案解析:x=6<8,執(zhí)行第二個(gè)分支,輸出B,故選B。19、若intx=10;則表達(dá)式x%3的結(jié)果是?()
A.1
B.2
C.3
D.0
【答案】:答案解析:%是取余運(yùn)算符,10除以3商3余1,故選A。20、若inta[5];則數(shù)組a的元素個(gè)數(shù)是?()
A.4
B.5
C.6
D.不確定
【答案】:答案解析:數(shù)組a[5]定義5個(gè)元素(下標(biāo)0-4),故選B。21、若charstr[]="Clanguage";則字符串長度是?()
A.10
B.11
C.12
D.13
【答案】:答案解析:字符串長度以\0結(jié)束,"Clanguage"含10個(gè)字符(不含\0),故選A。22、若intx=4;執(zhí)行if(x++>4)printf("A");elseprintf("B");輸出結(jié)果是?()
A.A
B.B
C.AB
D.無輸出
【答案】:答案解析:x++是后置自增,條件判斷時(shí)x=4,4>4為假,執(zhí)行else(輸出B),后x變?yōu)?,故選B。23、以下函數(shù)聲明正確的是?()
A.voidfun();
B.voidfun(inta);
C.intfun(int);
D.以上都正確
【答案】:答案解析:函數(shù)聲明可省略形參名(只留類型),A、B、C均符合語法,故選D。24、以下定義指向字符串的指針正確的是?()
A.char*str="hello";
B.charstr[]="hello";
C.char(*str)[]="hello";
D.charstr[5]="hello";
【答案】:答案解析:A是指向字符串常量的指針,B是字符數(shù)組,C是數(shù)組指針(類型不匹配),D長度不足(含\0需6字節(jié)),故選A。25、以下關(guān)于void類型函數(shù)的說法正確的是?()
A.不能有return語句
B.可以有return語句(無表達(dá)式)
C.必須有return語句
D.可返回任意類型
【答案】:答案解析:void函數(shù)可寫return;(無表達(dá)式),用于提前結(jié)束函數(shù),不能返回表達(dá)式,故選B。26、若inta[3][2]={{1,2},{3,4},{5,6}};則a[2][1]的值是?()
A.5
B.6
C.3
D.4
【答案】:答案解析:a[2][1]是第三行第二列,值為6,故選B。27、以下哪個(gè)函數(shù)用于讀取字符?()
A.putchar()
B.gets()
C.getchar()
D.printf()
【答案】:答案解析:getchar()讀取單個(gè)字符,puts()輸出字符串,gets()讀取字符串(已淘汰),故選C。28、以下字符串常量定義正確的是?()
A.charstr[]="C";
B.charstr[1]='C';
C.charstr[]={'C'};
D.charstr[2]={'C','\0'};
【答案】:答案解析:A用雙引號定義字符串(自動(dòng)加\0),B單引號用于字符常量,C無\0,D長度2正確但A更簡潔,故選A。29、以下switch語句語法錯(cuò)誤的是?()
A.switch(x){case1:printf("1");break;}
B.switch(x){case'a':printf("a");break;}
C.switch(x){case1.5:printf("1.5");break;}
D.switch(x){default:printf("0");}
【答案】:答案解析:case后必須是整型常量,1.5是浮點(diǎn)型,語法錯(cuò)誤,故選C。30、函數(shù)指針的作用是?()
A.存儲(chǔ)函數(shù)的地址
B.調(diào)用函數(shù)
C.實(shí)現(xiàn)回調(diào)函數(shù)
D.以上都正確
【答案】:答案解析:函數(shù)指針存儲(chǔ)函數(shù)地址,可通過指針調(diào)用函數(shù),常用于回調(diào)函數(shù),故選D。31、以下函數(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,語法錯(cuò)誤,故選D。32、若inti=1;執(zhí)行while(i<5){printf("%d",i);i+=2;}輸出結(jié)果是?()
A.13
B.135
C.1234
D.無輸出
【答案】:答案解析:i初始1,每次加2,執(zhí)行2次(1、3),輸出13,故選A。33、若charstr="Clanguage";則(str+2)的值是?()
A.'C'
B.''
C.'l'
D.'a'
【答案】:答案解析:str+2指向第三個(gè)字符,值為'l',故選C。34、若inta[4]={10,20,30,40};則*(a+2)的值是?()
A.20
B.30
C.40
D.10
【答案】:答案解析:a+2是第三個(gè)元素地址,*(a+2)=a[2]=30,故選B。35、以下哪個(gè)數(shù)據(jù)類型用于存儲(chǔ)單個(gè)字符?()
A.int
B.char
C.float
D.double
【答案】:答案解析:char用于存儲(chǔ)單個(gè)字符(ASCII碼),int存儲(chǔ)整數(shù),float/double存儲(chǔ)浮點(diǎn)數(shù),故選B。36、do-while循環(huán)中,循環(huán)體至少執(zhí)行幾次?()
A.0次
B.1次
C.2次
D.不確定
【答案】:答案解析:do-while“先執(zhí)行后判斷”,無論條件是否滿足,循環(huán)體至少執(zhí)行一次,故選B。37、以下哪個(gè)不是C語言的關(guān)鍵字?()
A.if
B.else
C.then
D.for
【答案】:答案解析:then不是C語言關(guān)鍵字,if(條件)、else(否則)、for(循環(huán))均是,故選C。38、若inta=3,b=4;則表達(dá)式ab++的值是?()
A.12
B.15
C.16
D.7
【答案】:答案解析:b++是后置自增,先參與運(yùn)算(ab=3*4=12),再自增(b變?yōu)?),故選A。39、若inta=7,b=3;執(zhí)行if(a%b==1)a=0;elseb=0;后a和b的值分別是?()
A.0,3
B.7,0
C.0,0
D.7,3
【答案】:答案解析:7%3=1,條件為真,a=0,b保持3,故選A。40、若inti=3;執(zhí)行do{printf("%d",i);i--;}while(i>=1);輸出結(jié)果是?()
A.321
B.123
C.3210
D.無輸出
【答案】:答案解析:do-while先執(zhí)行,i從3減到1,輸出321,故選A。41、函數(shù)定義和函數(shù)聲明的區(qū)別是?()
A.定義包含函數(shù)體,聲明不包含
B.聲明包含函數(shù)體,定義不包含
C.定義和聲明無區(qū)別
D.定義在程序開頭,聲明在結(jié)尾
【答案】:答案解析:函數(shù)定義是完整實(shí)現(xiàn)(含函數(shù)體),聲明是告訴編譯器函數(shù)名、參數(shù)、返回類型(不含函數(shù)體),故選A。42、若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。43、定義整型變量x、y并均賦值10的語句是?()
A.intx=y=10;
B.intx=10,y=10;
C.intx=10;y=10;
D.intx=10;inty=10;
【答案】:答案解析:同一行定義多個(gè)變量用逗號分隔,A不能連續(xù)賦值,C缺少int,D是兩行定義,故選B。44、以下數(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。45、continue語句只能用于以下哪種結(jié)構(gòu)?()
A.循環(huán)語句
B.switch語句
C.if語句
D.所有結(jié)構(gòu)
【答案】:答案解析:continue僅用于循環(huán)語句(for/while/do-while),用于跳過本次循環(huán),故選A。46、以下哪個(gè)運(yùn)算符的優(yōu)先級最高?()
A.+
B.*
C.=
D.==
【答案】:答案解析:算術(shù)運(yùn)算符中*
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 老年科疾病試題及答案
- 高頻海外銷售面試題庫及答案
- 變電運(yùn)行工考試《0kV作業(yè)員業(yè)務(wù)知識考試答案》考試題
- 傳染病知識測試題及答案
- 幼兒保健學(xué)考試題及答案
- 阿迪達(dá)斯(中國)招聘面試題及答案
- 單招機(jī)電實(shí)操考試題庫及答案
- 成人教育口語試題及答案
- 2026黑龍江哈爾濱啟航勞務(wù)派遣有限公司派遣到哈爾濱工業(yè)大學(xué)航天學(xué)院航天科學(xué)與力學(xué)系招聘考試備考題庫必考題
- 中共南部縣委組織部關(guān)于2025年南部縣黨政機(jī)關(guān)公開考調(diào)工作人員的(16人)考試備考題庫必考題
- 第23課 醫(yī)療設(shè)施新功能 課件 2025-2026學(xué)年人教版初中信息科技八年級全一冊
- 砂石骨料生產(chǎn)管理制度
- 2025-2030無人船航運(yùn)技術(shù)領(lǐng)域市場供需分析及投資評估規(guī)劃分析研究報(bào)告
- 系統(tǒng)權(quán)限規(guī)范管理制度
- GB 12801-2025生產(chǎn)過程安全基本要求
- 2025年CFA二級真題解析及答案
- 2026年遼寧醫(yī)藥職業(yè)學(xué)院單招職業(yè)技能考試參考題庫帶答案解析
- 2026年及未來5年市場數(shù)據(jù)中國電子級氫氟酸行業(yè)競爭格局分析及投資戰(zhàn)略咨詢報(bào)告
- 2026屆重慶市普通高中英語高三第一學(xué)期期末統(tǒng)考試題含解析
- 電線選型課件
- 2025年海南省公務(wù)員考試真題試卷含答案
評論
0/150
提交評論