版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
期末c語言試題第一部分單選題(50題)1、若inta[5]={1,2,3};則a[3]的值是?()
A.0
B.3
C.隨機值
D.無定義
【答案】:答案解析:初始化時未賦值的元素默認(rèn)為0,a[3]=0,故選A。2、若inta=2;執(zhí)行a*=a+3;后a的值是?()
A.7
B.10
C.14
D.5
【答案】:答案解析:a*=a+3等價于a=a*(a+3)=2*(2+3)=10,故選B。3、以下哪個是合法的字符常量?()
A."a"
B.'ab'
C.'a'
D.a
【答案】:答案解析:字符常量用單引號包裹單個字符,A是字符串,B是兩個字符(錯誤),D是標(biāo)識符,故選C。4、若inti=0;執(zhí)行for(i=0;i<5;i++){if(i==2)continue;printf("%d",i);}輸出結(jié)果是?()
A.0134
B.01234
C.01
D.無限循環(huán)
【答案】:答案解析:i=2時執(zhí)行continue,跳過printf,輸出0134,故選A。5、若inta=5,b=3;執(zhí)行if(a>b){a--;b++;}后a和b的值分別是?()
A.4,4
B.5,3
C.4,3
D.5,4
【答案】:答案解析:a>b為真,執(zhí)行代碼塊,a=5-1=4,b=3+1=4,故選A。6、以下switch語句中,case穿透的情況是?()
A.case后加break
B.case后不加break
C.有default
D.無default
【答案】:答案解析:case后不加break會繼續(xù)執(zhí)行下一個case的代碼(穿透),加break則跳出,故選B。7、若inta=5,p=&a;執(zhí)行p=8;后a的值是?()
A.5
B.8
C.&a
D.無定義
【答案】:答案解析:*p=8通過指針修改指向變量a的值,a變?yōu)?,故選B。8、指針與結(jié)構(gòu)體的關(guān)系,以下說法正確的是?()
A.結(jié)構(gòu)體指針通過->訪問成員
B.結(jié)構(gòu)體變量通過。訪問成員
C.結(jié)構(gòu)體指針可指向結(jié)構(gòu)體變量
D.以上都正確
【答案】:答案解析:A、B、C均是結(jié)構(gòu)體與指針的基本規(guī)則,故選D。9、函數(shù)參數(shù)傳遞中,值傳遞的特點是?()
A.形參修改影響實參
B.形參是實參的副本
C.傳遞的是變量地址
D.用于數(shù)組傳參
【答案】:答案解析:值傳遞時形參是實參的拷貝,修改形參不影響實參,地址傳遞才影響實參,故選B。10、函數(shù)定義和函數(shù)聲明的區(qū)別是?()
A.定義包含函數(shù)體,聲明不包含
B.聲明包含函數(shù)體,定義不包含
C.定義和聲明無區(qū)別
D.定義在程序開頭,聲明在結(jié)尾
【答案】:答案解析:函數(shù)定義是完整實現(xiàn)(含函數(shù)體),聲明是告訴編譯器函數(shù)名、參數(shù)、返回類型(不含函數(shù)體),故選A。11、若inta=3;執(zhí)行a+=aa;后a的值是?()
A.12
B.6
C.9
D.15
【答案】:答案解析:優(yōu)先級先乘后加,a+=aa等價于a=a+(aa)=3+(33)=12,故選A。12、以下關(guān)于數(shù)組的說法正確的是?()
A.數(shù)組長度可動態(tài)修改
B.數(shù)組元素可不同類型
C.數(shù)組在內(nèi)存中連續(xù)存儲
D.數(shù)組名可作為左值賦值
【答案】:答案解析:A數(shù)組長度定義后固定,B元素必須同類型,D數(shù)組名是常量(不可賦值),C正確,故選C。13、以下哪個賦值語句是正確的?()
A.inta=5;
B.a=5;
C.inta=b=5;
D.a=b=5;
【答案】:答案解析:B、D未定義變量,C不能連續(xù)賦值定義,A定義并賦值正確,故選A。14、以下switch語句中,default的位置可以在?()
A.所有case之前
B.所有case之后
C.兩個case之間
D.以上都可以
【答案】:答案解析:default位置靈活,可在case前、后或中間,不影響執(zhí)行邏輯,故選D。15、以下if語句語法正確的是?()
A.if(x>0)printf("yes");
B.ifx>0printf("yes");
C.if(x>0);printf("yes");
D.if(x>0){printf("yes")}
【答案】:答案解析:if后條件需加括號,B缺少括號,C分號導(dǎo)致語句結(jié)束,D缺少分號,故選A。16、以下函數(shù)調(diào)用正確的是?()
A.fun();
B.fun(1,2);
C.fun("test");
D.取決于函數(shù)定義
【答案】:答案解析:函數(shù)調(diào)用是否正確取決于函數(shù)定義(參數(shù)類型、個數(shù)),A、B、C均可能正確,故選D。17、若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。18、以下switch語句語法正確的是?()
A.switch(x){case1:printf("1");break;case2:printf("2");}
B.switch(x){case1:printf("1");case2:printf("2");break;}
C.switch(x){case1:printf("1");break;default:printf("0");}
D.以上都正確
【答案】:答案解析:switch語句case后可加break(跳出)或不加(穿透),default可選,A、B、C語法均正確,故選D。19、函數(shù)返回值通過______語句返回?()
A.printf
B.scanf
C.return
D.break
【答案】:答案解析:return語句用于函數(shù)返回值,printf輸出,scanf輸入,break跳出循環(huán)/switch,故選C。20、指針作為函數(shù)返回值時,不能返回?()
A.靜態(tài)局部變量的地址
B.全局變量的地址
C.動態(tài)分配內(nèi)存的地址
D.局部變量的地址
【答案】:答案解析:局部變量在函數(shù)調(diào)用結(jié)束后釋放,返回其地址會導(dǎo)致野指針,故選D。21、預(yù)處理命令#definePI3.14159的作用是?()
A.定義變量
B.定義常量
C.函數(shù)聲明
D.包含頭文件
【答案】:答案解析:#define是宏定義,用于定義常量(無分號,直接替換),故選B。22、若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。23、函數(shù)中局部變量的作用域是?()
A.整個程序
B.函數(shù)內(nèi)部
C.函數(shù)外部
D.所有函數(shù)
【答案】:答案解析:局部變量定義在函數(shù)內(nèi),僅在函數(shù)內(nèi)部有效,故選B。24、以下if語句中,邏輯非運算符使用正確的是?()
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等價于x!=0,邏輯不同,故選D。25、以下switch語句中,break語句的作用是?()
A.終止當(dāng)前case
B.終止switch語句
C.跳過下一個case
D.無作用
【答案】:答案解析:break在switch中用于跳出整個switch語句,避免case穿透,故選B。26、指針的自增運算(p++)的含義是?()
A.指針值加1
B.指針指向的變量值加1
C.指針指向地址偏移一個類型大小
D.指針指向地址偏移1字節(jié)
【答案】:答案解析:p++使指針指向地址偏移“指向類型大小”(如int指針+4字節(jié)),故選C。27、若intx=5;執(zhí)行以下代碼后輸出結(jié)果是?()if(x>10)printf("A");elseif(x>6)printf("B");elseif(x>3)printf("C");elseprintf("D");
A.A
B.B
C.C
D.
【答案】:答案解析:x=5>3,執(zhí)行第三個分支,輸出C,故選C。28、以下哪個轉(zhuǎn)義字符表示制表符?()
A.\n
B.\t
C.\b
D.\r
【答案】:答案解析:\t是制表符(Tab),\n換行,\b退格,\r回車,故選B。29、函數(shù)返回值的類型與return語句中表達(dá)式類型不一致時,會?()
A.編譯錯誤
B.自動強制轉(zhuǎn)換為函數(shù)返回類型
C.程序崩潰
D.無影響
【答案】:答案解析:編譯器會將return表達(dá)式類型強制轉(zhuǎn)換為函數(shù)返回類型(可能丟失精度),不報錯,故選B。30、若intx=3;執(zhí)行以下代碼后a的值是?()inta;if(x>5)a=10;elseif(x>2)a=20;elsea=30;
A.10
B.20
C.30
D.無定義
【答案】:答案解析:x=3>2,執(zhí)行第二個分支,a=20,故選B。31、putchar()函數(shù)的功能是?()
A.讀取一個字符
B.輸出一個字符
C.讀取字符串
D.輸出字符串
【答案】:答案解析:putchar()用于輸出單個字符,getchar()讀取單個字符,puts()輸出字符串,故選B。32、以下if-else語句中,代碼塊執(zhí)行順序正確的是?()
A.先執(zhí)行if條件,滿足則執(zhí)行if代碼塊,否則執(zhí)行else代碼塊
B.先執(zhí)行else代碼塊,再執(zhí)行if條件
C.同時執(zhí)行if和else代碼塊
D.僅執(zhí)行else代碼塊
【答案】:答案解析:if-else邏輯為“條件判斷→滿足執(zhí)行if,否則執(zhí)行else”,互斥執(zhí)行,故選A。33、以下關(guān)于main函數(shù)的說法錯誤的是?()
A.程序從main開始執(zhí)行
B.main函數(shù)可帶參數(shù)
C.main函數(shù)必須有返回值
D.main函數(shù)可調(diào)用其他函數(shù)
【答案】:答案解析:main函數(shù)可聲明為void(無返回值),C說法錯誤,A、B、D正確,故選C。34、以下if語句中,賦值語句和判斷語句混淆的是?()
A.if(x==5)
B.if(x=5)
C.if(x!=5)
D.if(x>5)
【答案】:答案解析:x=5是賦值(將5賦給x),x==5是判斷(x是否等于5),B混淆了兩者,故選B。35、以下關(guān)于指針數(shù)組和數(shù)組指針的說法正確的是?()
A.指針數(shù)組是數(shù)組,元素為指針
B.數(shù)組指針是指針,指向數(shù)組
C.int*arr[5]是指針數(shù)組,int(*arr)[5]是數(shù)組指針
D.以上都正確
【答案】:答案解析:A、B、C均準(zhǔn)確區(qū)分了指針數(shù)組和數(shù)組指針,故選D。36、邏輯表達(dá)式!0的結(jié)果是?()
A.0
B.1
C.真
D.假
【答案】:答案解析:C語言中非0為真,!是邏輯非,!0(假)結(jié)果為1(真),故選B。37、以下定義指向數(shù)組的指針正確的是?()
A.inta[5],*p=a;
B.inta[5],*p=&a;
C.inta[5],p=a;
D.inta[5],*p=a[0];
【答案】:答案解析:a是數(shù)組名(首元素地址),p=a等價于p=&a[0],B&a是數(shù)組地址(類型不匹配),Cp是普通變量,Dp不能賦a[0]的值,故選A。38、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。39、以下switch語句語法錯誤的是?()
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ù),編譯報錯,故選D。40、函數(shù)嵌套調(diào)用是指?()
A.函數(shù)調(diào)用自身
B.函數(shù)調(diào)用另一個函數(shù)
C.函數(shù)定義中包含另一個函數(shù)
D.多個函數(shù)互相調(diào)用
【答案】:答案解析:嵌套調(diào)用是函數(shù)A調(diào)用函數(shù)B,函數(shù)B調(diào)用函數(shù)C,遞歸是調(diào)用自身,故選B。41、break語句不能用于以下哪種結(jié)構(gòu)?()
A.for循環(huán)
B.while循環(huán)
C.do-while循環(huán)
D.if語句
【答案】:答案解析:break可用于循環(huán)(for/while/do-while)和switch語句,不能用于if語句,故選D。42、若inta=10,*p=&a;則sizeof(p)的值是?()
A.4
B.8
C.取決于系統(tǒng)
D.10
【答案】:答案解析:sizeof(p)是指針大小,32位系統(tǒng)4字節(jié),64位8字節(jié),故選C。43、若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。44、以下哪個關(guān)鍵字用于定義整型變量?()
A.char
B.int
C.float
D.double
【答案】:答案解析:int定義整型,char字符型,float單精度浮點型,double雙精度浮點型,故選B。45、以下關(guān)于main函數(shù)的說法正確的是?()
A.main函數(shù)可無返回值
B.main函數(shù)可帶參數(shù)
C.main函數(shù)是程序入口
D.以上都正確
【答案】:答案解析:main函數(shù)
溫馨提示
- 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年財務(wù)管理(成本核算)試題及答案
- 2025年大學(xué)第一學(xué)年(歷史學(xué))中國古代史先秦時期試題及答案
- 2025年中職(會計電算化專業(yè))賬務(wù)初始化試題及答案
- 2025年大學(xué)大二(市場營銷)促銷組合策略階段測試試題及答案
- 2025年大學(xué)動物學(xué)(動物生理機能)試題及答案
- 2025年中職汽車(汽車維修基礎(chǔ))試題及答案
- 2025年高職(汽車檢測與維修技術(shù))汽車故障排除實訓(xùn)試題及答案
- 2025年中職建筑(建筑結(jié)構(gòu)基礎(chǔ))試題及答案
- 2025年大學(xué)水產(chǎn)養(yǎng)殖學(xué)(病害防控研究)試題及答案
- 2025年大學(xué)大四(物流工程)物流工程技術(shù)應(yīng)用創(chuàng)新階段測試題及答案
- 湖南省2025-2026學(xué)年七年級歷史上學(xué)期期末復(fù)習(xí)試卷(含答案)
- 2026年中國熱帶農(nóng)業(yè)科學(xué)院南亞熱帶作物研究所第一批招聘23人備考題庫完美版
- 2026新疆阿合奇縣公益性崗位(鄉(xiāng)村振興專干)招聘44人考試參考試題及答案解析
- 紡織倉庫消防安全培訓(xùn)
- 器官移植術(shù)后排斥反應(yīng)的風(fēng)險分層管理
- 虛擬電廠關(guān)鍵技術(shù)
- 事業(yè)單位清算及財務(wù)報告編寫范本
- 護(hù)坡綠化勞務(wù)合同范本
- 臨床績效的DRG與CMI雙指標(biāo)調(diào)控
- 護(hù)坡施工安全專項方案
- 光伏電源項目工程建設(shè)管理資料表格格式匯編
評論
0/150
提交評論