版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
數(shù)組c語言考試題庫第一部分單選題(50題)1、函數(shù)定義在main函數(shù)之后時,必須先?()
A.調(diào)用函數(shù)
B.聲明函數(shù)
C.定義函數(shù)
D.無要求
【答案】:答案解析:main函數(shù)調(diào)用其他函數(shù)時,若函數(shù)定義在main之后,需先聲明(否則編譯器找不到函數(shù)),故選B。2、若inti=1,s=0;執(zhí)行while(i<=5){s+=i;i++;}后s的值是?()
A.15
B.10
C.5
D.0
【答案】:答案解析:循環(huán)累加1+2+3+4+5=15,s=15,故選A。3、若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。4、以下哪個轉(zhuǎn)義字符表示制表符?()
A.\n
B.\t
C.\b
D.\r
【答案】:答案解析:\t是制表符(Tab),\n換行,\b退格,\r回車,故選B。5、以下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。6、函數(shù)參數(shù)為數(shù)組時,形參的寫法錯誤的是?()
A.inta[]
B.int*a
C.inta[5]
D.inta
【答案】:答案解析:D中inta是普通變量,不能接收數(shù)組名(地址),A、B、C均正確,故選D。7、若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。8、以下指針運(yùn)算中,結(jié)果為指針的是?()
A.*p
B.p+1
C.&a
D.B和C
【答案】:答案解析:p+1是指針偏移,&a是取地址,結(jié)果均為指針;*p是解引用(獲取值),故選D。9、以下關(guān)于循環(huán)語句的說法錯誤的是?()
A.for循環(huán)三個表達(dá)式均可省略
B.while循環(huán)先判斷后執(zhí)行
C.do-while循環(huán)至少執(zhí)行一次
D.continue可用于switch語句
【答案】:答案解析:continue僅用于循環(huán)語句,不能用于switch,A、B、C說法正確,故選D。10、函數(shù)調(diào)用時,實(shí)參和形參的個數(shù)必須?()
A.相等
B.實(shí)參多于形參
C.形參多于實(shí)參
D.無要求
【答案】:答案解析:函數(shù)調(diào)用時實(shí)參和形參個數(shù)、類型需匹配,否則編譯錯誤,故選A。11、以下for循環(huán)的循環(huán)變量初始化表達(dá)式為“i=5”的是?()
A.for(i=0;i<5;i++)
B.for(i=5;i>0;i--)
C.for(i=2;i<=5;i++)
D.for(i=5;i<10;i+=2)
【答案】:答案解析:初始化表達(dá)式是for循環(huán)第一個部分,B中i=5符合,其余初始化非5,故選B。12、以下關(guān)于二維數(shù)組的說法正確的是?()
A.二維數(shù)組是數(shù)組的數(shù)組
B.二維數(shù)組元素在內(nèi)存中按列存儲
C.二維數(shù)組長度必須是常量
D.二維數(shù)組不能作為函數(shù)參數(shù)
【答案】:答案解析:二維數(shù)組本質(zhì)是數(shù)組的數(shù)組,內(nèi)存按行存儲,可作為函數(shù)參數(shù),長度需常量,故選A。13、以下函數(shù)聲明正確的是?()
A.voidfun();
B.voidfun(inta);
C.intfun(int);
D.以上都正確
【答案】:答案解析:函數(shù)聲明可省略形參名(只留類型),A、B、C均符合語法,故選D。14、表示“x大于5且小于10”的合法C語言表達(dá)式是?()
A.5<x<10
B.x>5||x<10
C.x>5&&x<10
D.x>5&x<10
【答案】:答案解析:邏輯與用&&,邏輯或用||,A是連續(xù)比較語法錯誤,&是按位與,故選C。15、以下switch語句中,break語句的作用是?()
A.終止當(dāng)前case
B.終止switch語句
C.跳過下一個case
D.無作用
【答案】:答案解析:break在switch中用于跳出整個switch語句,避免case穿透,故選B。16、指針作為函數(shù)返回值時,不能返回?()
A.靜態(tài)局部變量的地址
B.全局變量的地址
C.動態(tài)分配內(nèi)存的地址
D.局部變量的地址
【答案】:答案解析:局部變量在函數(shù)調(diào)用結(jié)束后釋放,返回其地址會導(dǎo)致野指針,故選D。17、若inti;執(zhí)行for(i=0;i<5;i++)printf("%d",i);輸出結(jié)果是?()
A.01234
B.12345
C.012345
D.無輸出
【答案】:答案解析:for循環(huán)初始化i=0,條件i<5(成立時執(zhí)行),每次循環(huán)后i++,執(zhí)行5次,輸出01234,故選A。18、以下函數(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。19、以下定義指向字符串的指針正確的是?()
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。20、以下指針與函數(shù)的關(guān)系正確的是?()
A.函數(shù)名是函數(shù)的地址
B.函數(shù)指針可指向函數(shù)
C.可通過函數(shù)指針調(diào)用函數(shù)
D.以上都正確
【答案】:答案解析:A、B、C均是函數(shù)與指針的基本關(guān)系,故選D。21、以下關(guān)于數(shù)組初始化的說法正確的是?()
A.數(shù)組必須初始化
B.數(shù)組初始化時元素個數(shù)不能少于長度
C.數(shù)組初始化時可部分賦值
D.數(shù)組初始化后不能修改
【答案】:答案解析:數(shù)組可部分賦值(未賦值元素默認(rèn)0),A數(shù)組可不用初始化,B可少于長度,D數(shù)組元素可修改,故選C。22、若inti=0;執(zhí)行while(i<5){i++;if(i==3)continue;printf("%d",i);}輸出結(jié)果是?()
A.1245
B.12345
C.01245
D.無輸出
【答案】:答案解析:i=3時continue,跳過printf,輸出1、2、4、5,故選A。23、若inta=4,b=6;則表達(dá)式a<b?a+b:a-b的結(jié)果是?()
A.10
B.-2
C.4
D.6
【答案】:答案解析:a<b為真,取a+b=4+6=10,故選A。24、若inta=4;執(zhí)行if(a--<4)printf("A");elseprintf("B");輸出結(jié)果是?()
A.A
B.B
C.AB
D.無輸出
【答案】:答案解析:a--是后置自減,條件判斷時a=4,4<4為假,執(zhí)行else(輸出B),后a變?yōu)?,故選B。25、若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。26、以下循環(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。27、執(zhí)行scanf("%d,%d",&a,&b);時,正確的輸入格式是?()
A.23
B.2;3
C.2,3
D.2和3
【答案】:答案解析:scanf格式串中含逗號分隔符,輸入需嚴(yán)格對應(yīng),故選C。28、shortint類型的有符號取值范圍是?()
A.0~65535
B.-32768~32767
C.-2147483648~2147483647
D.無固定范圍
【答案】:答案解析:16位shortint有符號取值標(biāo)準(zhǔn)為-32768~32767,無符號為0~65535,故選B。29、以下關(guān)于void類型函數(shù)的說法正確的是?()
A.不能有return語句
B.可以有return語句(無表達(dá)式)
C.必須有return語句
D.可返回任意類型
【答案】:答案解析:void函數(shù)可寫return;(無表達(dá)式),用于提前結(jié)束函數(shù),不能返回表達(dá)式,故選B。30、以下循環(huán)中,無限循環(huán)的是?()
A.for(i=0;i<5;i++)
B.while(i=5)
C.do{i++;}while(i<5);
D.for(i=5;i>0;i--)
【答案】:答案解析:while(i=5)是賦值(i=5,非0,條件恒真),無限循環(huán);A執(zhí)行5次,C(i初始0)執(zhí)行5次,D執(zhí)行5次,故選B。31、若charstr="hello";則str[1]的值是?()
A.'h'
B.'e'
C.'l'
D.'\0'
【答案】:答案解析:str是字符串首地址,str[1]等價于(str+1),值為'e',故選B。32、若intx=1;執(zhí)行switch(x){case1:printf("1");case2:printf("2");break;case3:printf("3");}輸出結(jié)果是?()
A.1
B.12
C.123
D.無輸出
【答案】:答案解析:x=1匹配case1,無break,穿透到case2(執(zhí)行后break),輸出12,故選B。33、若inti=0,s=0;執(zhí)行for(i=0;i<4;i++)s+=i;后s的值是?()
A.6
B.10
C.4
D.0
【答案】:答案解析:累加0+1+2+3=6,s=6,故選A。34、以下關(guān)于main函數(shù)的說法正確的是?()
A.main函數(shù)可無返回值
B.main函數(shù)可帶參數(shù)
C.main函數(shù)是程序入口
D.以上都正確
【答案】:答案解析:main函數(shù)可聲明為void(無返回值),可帶argc/argv參數(shù),是程序唯一入口,故選D。35、以下字符串常量定義正確的是?()
A.charstr[]="C";
B.charstr[1]='C';
C.charstr[]={'C'};
D.charstr[2]={'C','\0'};
【答案】:答案解析:A用雙引號定義字符串(自動加\0),B單引號用于字符常量,C無\0,D長度2正確但A更簡潔,故選A。36、若inta[5]={1,2,3,4,5};則*(a+4)的值是?()
A.4
B.5
C.1
D.2
【答案】:答案解析:a+4是第五個元素地址,*(a+4)=a[4]=5,故選B。37、putchar()函數(shù)的功能是?()
A.讀取一個字符
B.輸出一個字符
C.讀取字符串
D.輸出字符串
【答案】:答案解析:putchar()用于輸出單個字符,getchar()讀取單個字符,puts()輸出字符串,故選B。38、若intx=0;執(zhí)行if(x)printf("A");elseprintf("B");輸出結(jié)果是?()
A.A
B.B
C.AB
D.無輸出
【答案】:答案解析:x=0為假,執(zhí)行else分支,輸出B,故選B。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、以下哪個是C語言的循環(huán)語句?()
A.if
B.for
C.else
D.switch
【答案】:答案解析:C語言循環(huán)語句包括for、while、do-while,if/else是選擇語句,switch是多分支選擇語句,故選B。41、以下關(guān)于函數(shù)的說法正確的是?()
A.函數(shù)必須有返回值
B.函數(shù)可嵌套定義
C.函數(shù)可遞歸調(diào)用
D.函數(shù)名可重定義
【答案】:答案解析:A函數(shù)可無返回值(void),B不能嵌套定義(可嵌套調(diào)用),D函數(shù)名不能重定義,C遞歸調(diào)用正確,故選C。42、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。43、若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。44、以下關(guān)于指針的說法錯誤的是?()
A.指針可指向變量、數(shù)組、函數(shù)
B.指針可進(jìn)行算術(shù)運(yùn)算(如++、--)
C.指針可指向自身
D.指針可用于動態(tài)內(nèi)存分配
【答案】:答案解析:指針不能指向自身(類型不匹配),A、
溫馨提示
- 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年中職幼兒保育(幼兒行為觀察)試題及答案
- 2025年中職會計(jì)學(xué)(會計(jì)學(xué)概論)試題及答案
- 2025年中職計(jì)算機(jī)應(yīng)用(計(jì)算機(jī)應(yīng)用技術(shù))試題及答案
- 2025年高職地圖數(shù)據(jù)標(biāo)題轉(zhuǎn)換技術(shù)(標(biāo)題轉(zhuǎn)換實(shí)操)試題及答案
- (正式版)DB21∕T 20008-2024 《滑雪場所巡查救助人員管理規(guī)范》
- (16區(qū)全套) 上海市16區(qū)2026屆初三一?;瘜W(xué)試卷合集(含答案)
- 2026安徽蚌埠市固鎮(zhèn)縣楊廟鎮(zhèn)面向全縣選聘村黨組織書記后備力量4人備考題庫及答案詳解(奪冠系列)
- 晚安問候話術(shù)
- 四川省綿陽市鹽亭縣2025-2026學(xué)年八年級上學(xué)期1月期末語文試題
- 2025-2026學(xué)年第一學(xué)期廣東省深圳市龍崗區(qū)高三期末歷史測試題(二)(含答案)
- 2025年四川單招護(hù)理試題及答案
- 鋼梁現(xiàn)場安裝施工質(zhì)量通病、原因分析及應(yīng)對措施
- 山東省青島市市南區(qū)2024-2025學(xué)年六年級上學(xué)期期末考試數(shù)學(xué)試卷
- 安全生產(chǎn)責(zé)任追究細(xì)則
- 兒童肱骨髁上骨折術(shù)
- 寄遞物流禁毒培訓(xùn)
- 長沙渣土車管理辦法
- 監(jiān)獄干警給犯人授課課件
- 2025年華龍證券招聘考試題庫
- 森林撫育等服務(wù)采購項(xiàng)目方案投標(biāo)文件(技術(shù)文件)
- 隧道人員管理辦法
評論
0/150
提交評論