版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
C語言程序設(shè)計基礎(chǔ)單項選擇題庫第一部分單選題(50題)1、以下哪個是C語言的循環(huán)語句?()
A.if
B.for
C.else
D.switch
【答案】:答案解析:C語言循環(huán)語句包括for、while、do-while,if/else是選擇語句,switch是多分支選擇語句,故選B。2、若inta=4;執(zhí)行a-=2;后a的值是?()
A.2
B.4
C.6
D.0
【答案】:答案解析:a-=2等價于a=a-2,4-2=2,故選A。3、若inta[5]={1,2,3,4,5},p=a;執(zhí)行p+=2;后p的值是?()
A.2
B.3
C.4
D.5
【答案】:答案解析:p+=2使p指向a[2],*p=3,故選B。4、以下定義指向數(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。5、以下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,語法錯誤,B用{}包裹代碼塊正確,故選B。6、以下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。7、若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。8、以下哪個條件表達(dá)式表示“x是奇數(shù)”?()
A.x%2==0
B.x%2!=0
C.x/2==0
D.x/2!=0
【答案】:答案解析:奇數(shù)除以2余數(shù)為1,x%2!=0表示奇數(shù),A是偶數(shù),故選B。9、以下函數(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。10、以下if語句的語法正確的是?()
A.if(x>0){printf("a");elseprintf("b");}
B.if(x>0)printf("a");else{printf("b");}
C.if(x>0)printf("a");elseprintf("b");}
D.if(x>0){printf("a");}elseprintf("b");}
【答案】:答案解析:A缺少},C多},D多},B語法正確(else后{}可加可不加),故選B。11、以下二維數(shù)組初始化正確的是?()
A.inta[2][3]={{1},{2},{3}};
B.inta[2][3]={1,2,3,4,5};
C.inta[2][3]={{1,2,3},{4,5,6}};
D.inta[2][3]={1,2,3,4,5,6,7};
【答案】:答案解析:A行數(shù)超2,B元素不足6個(補(bǔ)0),C標(biāo)準(zhǔn)初始化,D元素超6個,故選C。12、以下字符串常量定義正確的是?()
A.charstr[]="C";
B.charstr[1]='C';
C.charstr[]={'C'};
D.charstr[2]={'C','\0'};
【答案】:答案解析:A用雙引號定義字符串(自動加\0),B單引號用于字符常量,C無\0,D長度2正確但A更簡潔,故選A。13、以下for循環(huán)中,循環(huán)變量初始化、條件判斷、更新表達(dá)式均正確的是?()
A.for(i=0;i<5;i++)
B.for(i=5;i>0;i--)
C.for(i=0;i<5;i+=2)
D.以上都正確
【答案】:答案解析:A(遞增)、B(遞減)、C(步長2)的三個表達(dá)式均合法,循環(huán)邏輯正確,故選D。14、若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。15、以下哪個數(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。16、若inti=0;執(zhí)行while(i<5){if(i==2)break;printf("%d",i);i++;}輸出結(jié)果是?()
A.01
B.012
C.01234
D.無限循環(huán)
【答案】:答案解析:i=2時執(zhí)行break,終止循環(huán),輸出01,故選A。17、若inta=7,*p=&a;執(zhí)行++*p;后a的值是?()
A.7
B.8
C.&a
D.無定義
【答案】:答案解析:++*p等價于++(*p),先解引用取a的值,再加1(a=8),故選B。18、函數(shù)返回值通過______語句返回?()
A.printf
B.scanf
C.return
D.break
【答案】:答案解析:return語句用于函數(shù)返回值,printf輸出,scanf輸入,break跳出循環(huán)/switch,故選C。19、以下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。20、若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。21、邏輯表達(dá)式!0的結(jié)果是?()
A.0
B.1
C.真
D.假
【答案】:答案解析:C語言中非0為真,!是邏輯非,!0(假)結(jié)果為1(真),故選B。22、若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。23、以下函數(shù)定義中,參數(shù)為指針的是?()
A.voidfun(int*a){printf("%d",*a);}
B.voidfun(inta){printf("%d",a);}
C.voidfun(inta[]){printf("%d",a[0]);}
D.A和C
【答案】:答案解析:A是指針參數(shù),C數(shù)組名參數(shù)本質(zhì)是指針,B是值參數(shù),故選D。24、若inta=5,p=&a;執(zhí)行p=8;后a的值是?()
A.5
B.8
C.&a
D.無定義
【答案】:答案解析:*p=8通過指針修改指向變量a的值,a變?yōu)?,故選B。25、若inta[5]={10,20,30,40,50};則a[2]的值是?()
A.10
B.20
C.30
D.40
【答案】:答案解析:數(shù)組下標(biāo)從0開始,a[2]是第三個元素30,故選C。26、以下哪個函數(shù)用于輸出字符串?()
A.putchar()
B.printf()
C.gets()
D.scanf()
【答案】:答案解析:printf()可輸出字符串(如printf("hello");),putchar()輸出單個字符,故選B。27、函數(shù)參數(shù)傳遞中,值傳遞適用于?()
A.簡單變量,無需修改實(shí)參
B.數(shù)組,需修改元素
C.指針,需修改實(shí)參
D.結(jié)構(gòu)體,需修改成員
【答案】:答案解析:值傳遞用于簡單變量(不修改實(shí)參),地址傳遞用于需修改實(shí)參的場景,故選A。28、以下關(guān)于函數(shù)遞歸的說法錯誤的是?()
A.必須有終止條件
B.可能導(dǎo)致棧溢出
C.效率比循環(huán)高
D.代碼簡潔
【答案】:答案解析:遞歸調(diào)用會創(chuàng)建棧幀,效率低于循環(huán),A、B、D正確,C錯誤,故選C。29、若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í)行第二個分支,輸出B,故選B。30、以下函數(shù)聲明正確的是?()
A.voidfun();
B.voidfun(inta);
C.intfun(int);
D.以上都正確
【答案】:答案解析:函數(shù)聲明可省略形參名(只留類型),A、B、C均符合語法,故選D。31、若inti=0;執(zhí)行for(;;){if(i==4)break;printf("%d",i);i++;}輸出結(jié)果是?()
A.0123
B.01234
C.無限循環(huán)
D.無輸出
【答案】:答案解析:for(;;)是無限循環(huán),i=4時break,輸出0123,故選A。32、shortint類型的有符號取值范圍是?()
A.0~65535
B.-32768~32767
C.-2147483648~2147483647
D.無固定范圍
【答案】:答案解析:16位shortint有符號取值標(biāo)準(zhǔn)為-32768~32767,無符號為0~65535,故選B。33、do-while循環(huán)中,循環(huán)體至少執(zhí)行幾次?()
A.0次
B.1次
C.2次
D.不確定
【答案】:答案解析:do-while“先執(zhí)行后判斷”,無論條件是否滿足,循環(huán)體至少執(zhí)行一次,故選B。34、以下函數(shù)定義正確的是?()
A.voidfun(){printf("hello");}
B.voidfun(inta){printf("%d",a);}
C.intfun(){return5;}
D.以上都正確
【答案】:答案解析:A無參無返回值,B有參無返回值,C無參有返回值,均符合語法,故選D。35、若charstr="Clanguage";則(str+2)的值是?()
A.'C'
B.''
C.'l'
D.'a'
【答案】:答案解析:str+2指向第三個字符,值為'l',故選C。36、若intx=4;執(zhí)行if(x++>4)printf("A");elseprintf("B");輸出結(jié)果是?()
A.A
B.B
C.AB
D.無輸出
【答案】:答案解析:x++是后置自增,條件判斷時x=4,4>4為假,執(zhí)行else(輸出B),后x變?yōu)?,故選B。37、以下哪個字符串的長度是3?()
A."abc"
B."a\0b"
C."ab\n"
D."ab"
【答案】:答案解析:字符串長度以\0結(jié)束,"abc"含a、b、c(3個字符),"a\0b"長度為1,故選A。38、若inta=5,*p=&a;則&*p的值是?()
A.5
B.&a
C.p
D.無定義
【答案】:答案解析:&*p等價于p,即&a(a的地址),故選B。39、若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。40、若intx=5;則表達(dá)式++x的結(jié)果是?()
A.5
B.6
C.4
D.7
【答案】:答案解析:++x是前置自增,先自增(x變?yōu)?)再參與運(yùn)算,結(jié)果為6,故選B。41、定義單精度浮點(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。42、若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。43、以下數(shù)組定義錯誤的是?()
A.inta[0];
B.inta[5];
C.inta[]={1,2,3};
D.inta[5]={1,2,3};
【答案】:答案解析:數(shù)組長度不能為0,編譯報錯,其余正確,故選A。44、do-while循環(huán)的語法格式正確的是?()
A.do語句;while(條件);
B.do{語句}while(條件)
C.do語句while(條件);
D.do;語句;while(條件);
【答案】:答案解析:do-while格式為“do循環(huán)體;while(條件);”,循環(huán)體可是單條語句或代碼塊,B缺少分號,C缺少分號,D循環(huán)體為空,故選A。45、若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。46、以下關(guān)于函數(shù)參數(shù)的說法正確的是?()
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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026廣西百色市平果市文化體育廣電和旅游局城鎮(zhèn)公益性崗位人員招聘1人參考考試題庫及答案解析
- 2026福建福州第四十三中學(xué)招聘食堂人員1人考試備考題庫及答案解析
- 2026年靜脈導(dǎo)管維護(hù)標(biāo)準(zhǔn)化流程與并發(fā)癥預(yù)防
- 2026年兒科先天性腎上腺朊病毒培訓(xùn)
- 《GB 1523-2013綿羊毛》專題研究報告
- 2026年兒科傳染性單核細(xì)胞增多癥護(hù)理
- 2026年廢舊農(nóng)藥包裝處理協(xié)議
- 2026年區(qū)塊鏈技術(shù)開發(fā)合作合同協(xié)議
- 企業(yè)內(nèi)部培訓(xùn)課程評估體系手冊(標(biāo)準(zhǔn)版)
- 企業(yè)財務(wù)報表審核流程手冊
- 2026中國國際航空招聘面試題及答案
- (2025年)工會考試附有答案
- 2026年國家電投集團(tuán)貴州金元股份有限公司招聘備考題庫完整參考答案詳解
- 復(fù)工復(fù)產(chǎn)安全知識試題及答案
- 中燃魯西經(jīng)管集團(tuán)招聘筆試題庫2026
- 資產(chǎn)接收協(xié)議書模板
- 數(shù)據(jù)中心合作運(yùn)營方案
- 印鐵涂料基礎(chǔ)知識
- 工資欠款還款協(xié)議書
- 石籠網(wǎng)廠施工技術(shù)交底
- 新建粉煤灰填埋場施工方案
評論
0/150
提交評論