版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
期末c語言考試題第一部分單選題(50題)1、若inti=0;執(zhí)行for(i=0;i<5;i++){printf("%d",i);if(i==2)break;}輸出結(jié)果是?()
A.012
B.01
C.01234
D.無輸出
【答案】:答案解析:i=2時break,輸出012,故選A。2、以下函數(shù)聲明正確的是?()
A.intfun(intx,inty);
B.intfun(int,int);
C.intfun(intx;inty);
D.A和B
【答案】:答案解析:函數(shù)聲明可寫參數(shù)名或只寫類型,A、B正確,C用分號錯誤,故選D。3、以下數(shù)組定義錯誤的是?()
A.inta[0];
B.inta[5];
C.inta[]={1,2,3};
D.inta[5]={1,2,3};
【答案】:答案解析:數(shù)組長度不能為0,編譯報錯,其余正確,故選A。4、C語言程序的基本單位是?()
A.語句
B.函數(shù)
C.變量
D.表達(dá)式
【答案】:答案解析:C程序由函數(shù)構(gòu)成,main是入口函數(shù),其他函數(shù)實現(xiàn)功能,故選B。5、以下switch語句中,default的執(zhí)行時機(jī)是?()
A.所有case都不匹配時
B.第一個case不匹配時
C.最后一個case不匹配時
D.任何時候
【答案】:答案解析:default僅在所有case都不匹配時執(zhí)行,故選A。6、以下switch語句中,default的位置可以在?()
A.所有case之前
B.所有case之后
C.兩個case之間
D.以上都可以
【答案】:答案解析:default位置靈活,可在case前、后或中間,不影響執(zhí)行邏輯,故選D。7、若inta=7,*p=&a;執(zhí)行++*p;后a的值是?()
A.7
B.8
C.&a
D.無定義
【答案】:答案解析:++*p等價于++(*p),先解引用取a的值,再加1(a=8),故選B。8、以下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。9、以下二維數(shù)組定義正確的是?()
A.inta[2][3];
B.inta[2][];
C.inta[][3]={1,2,3,4,5,6};
D.inta[2][3]={1,2,3,4,5,6,7};
【答案】:答案解析:B第二維不能省略,C第一維可省略(自動計算為2),D初始化元素超6個(2×3=6),A標(biāo)準(zhǔn)定義正確,故選A。10、若inta[3][3]={{1},{2,3},{4,5,6}};則a[1][0]的值是?()
A.2
B.3
C.4
D.5
【答案】:答案解析:a[1][0]是第二行第一列,值為2,故選A。11、若inta[5]={1,2,3};則a[3]的值是?()
A.0
B.3
C.隨機(jī)值
D.無定義
【答案】:答案解析:初始化時未賦值的元素默認(rèn)為0,a[3]=0,故選A。12、若inta=10,b=20,*p=&a,q=&b;執(zhí)行p=q;后p的值是?()
A.10
B.20
C.&a
D.&b
【答案】:答案解析:p=q使p指向b,*p=b=20,故選B。13、以下函數(shù)定義中,參數(shù)為兩個int類型的是?()
A.voidfun(inta,floatb){}
B.voidfun(inta,intb){}
C.voidfun(floata,intb){}
D.voidfun(inta,charb){}
【答案】:答案解析:B中兩個參數(shù)均為int類型,其余選項參數(shù)類型不匹配,故選B。14、若floatx=3.14;則表達(dá)式(int)x的結(jié)果是?()
A.3
B.3.14
C.4
D.0
【答案】:答案解析:強(qiáng)制轉(zhuǎn)換為int取整數(shù)部分,3.14→3,故選A。15、若inta[3][3]={{1,2},{3,4},{5,6}};則a[1][1]的值是?()
A.2
B.4
C.5
D.6
【答案】:答案解析:a[1][1]是第二行第二列,值為4,故選B。16、函數(shù)參數(shù)傳遞中,地址傳遞的特點(diǎn)是?()
A.形參是實參的副本
B.形參修改不影響實參
C.傳遞的是變量地址
D.用于簡單變量傳參
【答案】:答案解析:地址傳遞(指針)傳遞變量地址,形參通過地址修改實參值,值傳遞是副本,故選C。17、若inti=1;執(zhí)行do{printf("%d",i);i++;}while(i<=0);輸出結(jié)果是?()
A.1
B.無輸出
C.無限循環(huán)
D.12
【答案】:答案解析:do-while先執(zhí)行一次(輸出1,i=2),再判斷i<=0為假,循環(huán)結(jié)束,故選A。18、函數(shù)返回值通過______語句返回?()
A.printf
B.scanf
C.return
D.break
【答案】:答案解析:return語句用于函數(shù)返回值,printf輸出,scanf輸入,break跳出循環(huán)/switch,故選C。19、以下關(guān)于數(shù)組的說法正確的是?()
A.數(shù)組長度可動態(tài)修改
B.數(shù)組元素可不同類型
C.數(shù)組在內(nèi)存中連續(xù)存儲
D.數(shù)組名可作為左值賦值
【答案】:答案解析:A數(shù)組長度定義后固定,B元素必須同類型,D數(shù)組名是常量(不可賦值),C正確,故選C。20、遞歸函數(shù)的終止條件是?()
A.函數(shù)調(diào)用自身
B.函數(shù)返回值為0
C.不再調(diào)用自身的條件
D.無終止條件
【答案】:答案解析:遞歸函數(shù)必須有終止條件(否則無限遞歸棧溢出),終止條件是不再調(diào)用自身的判斷,故選C。21、以下哪個數(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。22、若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。23、以下哪個關(guān)鍵字用于定義整型變量?()
A.char
B.int
C.float
D.double
【答案】:答案解析:int定義整型,char字符型,float單精度浮點(diǎn)型,double雙精度浮點(diǎn)型,故選B。24、轉(zhuǎn)義字符\0的作用是?()
A.表示空格
B.表示制表符
C.字符串結(jié)束標(biāo)志
D.換行
【答案】:答案解析:\0ASCII碼為0,是字符串默認(rèn)結(jié)束標(biāo)志,不計入長度,故選C。25、以下關(guān)于函數(shù)的說法錯誤的是?()
A.函數(shù)可嵌套調(diào)用
B.函數(shù)可遞歸調(diào)用
C.函數(shù)可重定義
D.函數(shù)可聲明多次
【答案】:答案解析:C函數(shù)名不能重定義(重復(fù)定義編譯報錯),A、B、D正確,故選C。26、以下if-else語句的語法錯誤是?()
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后不能直接加分號(否則else無作用),C中else;后printf獨(dú)立執(zhí)行,故選C。27、若intx=2;執(zhí)行switch(x){default:printf("0");case1:printf("1");break;case2:printf("2");case3:printf("3");}輸出結(jié)果是?()
A.01
B.23
C.0123
D.無輸出
【答案】:答案解析:x=2匹配case2,無break,穿透到case3,輸出23,故選B。28、若inta=1,b=2;則表達(dá)式(a==b)的結(jié)果是?()
A.1
B.0
C.2
D.真
【答案】:答案解析:==是等于判斷,a==b為假,C語言中假用0表示,故選B。29、以下關(guān)于動態(tài)內(nèi)存分配的說法正確的是?()
A.malloc函數(shù)用于動態(tài)分配內(nèi)存,返回void*
B.free函數(shù)用于釋放動態(tài)分配的內(nèi)存
C.動態(tài)分配的內(nèi)存需手動釋放,避免內(nèi)存泄漏
D.以上都正確
【答案】:答案解析:A、B、C均是動態(tài)內(nèi)存分配的核心規(guī)則,故選D。30、以下函數(shù)定義錯誤的是?()
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,語法錯誤,故選D。31、以下函數(shù)遞歸調(diào)用的例子是?()
A.計算階乘
B.循環(huán)輸出數(shù)字
C.數(shù)組遍歷
D.變量交換
【答案】:答案解析:階乘常用遞歸實現(xiàn)(n!=n*(n-1)!),B、C、D用循環(huán)更高效,故選A。32、以下循環(huán)中,循環(huán)次數(shù)為3次的是?()
A.for(i=1;i<=3;i++)
B.while(i=3)
C.do{i++;}while(i<3);
D.for(i=5;i>0;i--)
【答案】:答案解析:A執(zhí)行3次(1-3),B是無限循環(huán),C(i初始0)執(zhí)行3次,D執(zhí)行5次,題目問“3次”,A明確正確,故選A。33、以下轉(zhuǎn)義字符表示換行的是?()
A.\t
B.\n
C.\
D.\r
【答案】:答案解析:\t是制表符,\n是換行符,\是反斜杠,\r是回車符,故選B。34、若intx=4;執(zhí)行switch(x){case2:printf("2");break;default:printf("0");case4:printf("4");break;}輸出結(jié)果是?()
A.04
B.4
C.204
D.無輸出
【答案】:答案解析:x=4匹配case4,執(zhí)行輸出4,break跳出,故選B。35、以下關(guān)于main函數(shù)的說法正確的是?()
A.main函數(shù)可無返回值
B.main函數(shù)可帶參數(shù)
C.main函數(shù)是程序入口
D.以上都正確
【答案】:答案解析:main函數(shù)可聲明為void(無返回值),可帶argc/argv參數(shù),是程序唯一入口,故選D。36、以下數(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字符串自動加\0,B長度5不足以存hello(含\0共6個字符),C無\0(字符串不完整),D長度5超,故選A。37、若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。38、以下函數(shù)定義錯誤的是?()
A.voidfun(){}
B.voidfun(inta){}
C.intfun(){}
D.intfun(){return;}
【答案】:答案解析:D返回類型int(必須return表達(dá)式),return無表達(dá)式錯誤,A、B、C正確,故選D。39、以下定義指向數(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。40、以下switch語句語法錯誤的是?()
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)型,語法錯誤,故選C。41、以下關(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。42、指針與結(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。43、若inta=5,*p=&a;則&*p的值是?()
A.5
B.&a
C.p
D.無定義
【答案】:答案解析:&*p等價于p,即&a(a的地址),故選B。44、以下函數(shù)參數(shù)傳遞方式中,能修改實參值的是?()
A.值傳遞
B.地址傳遞
C.都能
D.都不能
【答案】:答案解析:值傳遞修改的是形參(副本),不影響實參;地址傳遞通過指針修改實參值,故選B。45、若inta[5
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年交管12123學(xué)法減分試題題庫含答案真題版
- 未來五年體視顯微鏡企業(yè)縣域市場拓展與下沉戰(zhàn)略分析研究報告
- 未來五年地中汽車衡企業(yè)數(shù)字化轉(zhuǎn)型與智慧升級戰(zhàn)略分析研究報告
- 中共南充市委老干部局中共南充市委市直屬機(jī)關(guān)工作委員會2025年公開遴選公務(wù)員(參照管理人員)的(3人)備考題庫附答案
- 中國航天科技集團(tuán)有限公司五院五一三所2026屆秋季校招參考題庫附答案
- 北京市大興區(qū)審計局招聘臨時輔助用工1人備考題庫附答案
- 安徽叉車集團(tuán)有限責(zé)任公司安徽合力股份有限公司2026屆校園招聘考試備考題庫必考題
- 招5人!海北州第二人民醫(yī)院2025年面向社會公開招聘參考題庫附答案
- 浙江國企招聘-2026年紹興市越才人力資源服務(wù)有限責(zé)任公司招聘參考題庫附答案
- 綿竹市2025年公開招聘社區(qū)專職工作者(91人)考試備考題庫必考題
- 電子商務(wù)畢業(yè)論文5000
- 2025-2026學(xué)年人教版(2024)初中生物八年級上冊教學(xué)計劃及進(jìn)度表
- 醫(yī)療衛(wèi)生輿情課件模板
- 高壓注漿施工方案(3篇)
- 高強(qiáng)混凝土知識培訓(xùn)課件
- (高清版)DB11∕T 1455-2025 電動汽車充電基礎(chǔ)設(shè)施規(guī)劃設(shè)計標(biāo)準(zhǔn)
- 暖通工程施工環(huán)保措施
- 宗族團(tuán)年活動方案
- 2025至2030中國碳納米管行業(yè)市場發(fā)展分析及風(fēng)險與對策報告
- 車企核心用戶(KOC)分層運(yùn)營指南
- 兒童課件小學(xué)生講繪本成語故事《69狐假虎威》課件
評論
0/150
提交評論