版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
清華c語言期末測試題第一部分單選題(50題)1、若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。2、以下關(guān)于指針的說法正確的是?()
A.指針可用于遍歷數(shù)組
B.指針可用于字符串操作
C.指針可用于函數(shù)參數(shù)傳遞
D.以上都正確
【答案】:答案解析:指針在數(shù)組遍歷、字符串處理、參數(shù)傳遞中均有核心作用,故選D。3、若inti=0;執(zhí)行for(i=0;i<5;i++){if(i==3)break;printf("%d",i);}輸出結(jié)果是?()
A.012
B.0123
C.01234
D.無輸出
【答案】:答案解析:i=3時break,輸出012,故選A。4、以下數(shù)組定義中,長度為5的是?()
A.inta[5];
B.inta[]={1,2,3,4,5};
C.charstr[]="abcd";
D.以上都是
【答案】:答案解析:A長度5,B長度5,C字符串"abcd"含\0共5個字符,故選D。5、若intx=9;執(zhí)行以下代碼后輸出結(jié)果是?()if(x>10)printf("A");elseif(x>8)printf("B");elseif(x>6)printf("C");elseprintf("D");
A.A
B.B
C.C
D.
【答案】:答案解析:x=9>8,執(zhí)行第二個分支,輸出B,故選B。6、以下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獨立執(zhí)行,故選C。7、以下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。8、以下for循環(huán)的語法錯誤是?()
A.for(inti=0;i<5;i++)printf("%d",i);
B.for(i=0;i<5;i++)printf("%d",i);
C.for(;i<5;i++)printf("%d",i);
D.for(i=0;;i++)printf("%d",i);
【答案】:答案解析:B中i未定義(需先聲明inti;),A(C99標(biāo)準(zhǔn)允許循環(huán)內(nèi)定義)、C(初始化省略)、D(條件省略,無限循環(huán))語法均正確,故選B。9、轉(zhuǎn)義字符\的作用是?()
A.表示反斜杠
B.表示換行
C.表示空格
D.表示制表符
【答案】:答案解析:\用于表示字符反斜杠(\),避免與轉(zhuǎn)義字符沖突,故選A。10、以下函數(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。11、以下關(guān)于main函數(shù)的說法正確的是?()
A.main函數(shù)可無返回值
B.main函數(shù)可帶參數(shù)
C.main函數(shù)是程序入口
D.以上都正確
【答案】:答案解析:main函數(shù)可聲明為void(無返回值),可帶argc/argv參數(shù),是程序唯一入口,故選D。12、若inta=5,p=&a;執(zhí)行p=8;后a的值是?()
A.5
B.8
C.&a
D.無定義
【答案】:答案解析:*p=8通過指針修改指向變量a的值,a變?yōu)?,故選B。13、以下定義指向數(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。14、若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。15、以下關(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。16、以下關(guān)于void類型函數(shù)的說法正確的是?()
A.不能有return語句
B.可以有return語句(無表達(dá)式)
C.必須有return語句
D.可返回任意類型
【答案】:答案解析:void函數(shù)可寫return;(無表達(dá)式),用于提前結(jié)束函數(shù),不能返回表達(dá)式,故選B。17、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。18、若inti=0;執(zhí)行for(i=1;i<=5;i++){if(i%3==0)continue;printf("%d",i);}輸出結(jié)果是?()
A.1245
B.12345
C.3
D.無輸出
【答案】:答案解析:i=3時continue,跳過printf,輸出1、2、4、5,故選A。19、以下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。20、以下哪個函數(shù)用于輸出字符串?()
A.putchar()
B.printf()
C.gets()
D.scanf()
【答案】:答案解析:printf()可輸出字符串(如printf("hello");),putchar()輸出單個字符,故選B。21、下列變量定義語法正確的是?()
A.inta=5;
B.inta=b=5;
C.int5a;
D.inta;b;
【答案】:答案解析:B不能連續(xù)賦值定義,C標(biāo)識符開頭錯誤,D分號分隔需分別定義(inta;intb;),故選A。22、表示“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。23、以下哪個字符串的長度是3?()
A."abc"
B."a\0b"
C."ab\n"
D."ab"
【答案】:答案解析:字符串長度以\0結(jié)束,"abc"含a、b、c(3個字符),"a\0b"長度為1,故選A。24、若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。25、若inta=5,*p=&a;則&*p的值是?()
A.5
B.&a
C.p
D.無定義
【答案】:答案解析:&*p等價于p,即&a(a的地址),故選B。26、若inta=7;執(zhí)行if(a%3==1)printf("A");elseif(a%3==2)printf("B");elseprintf("C");輸出結(jié)果是?()
A.A
B.B
C.C
D.無輸出
【答案】:答案解析:7%3=1?7/3=2余1?不,7%3=1?7-3*2=1,條件1成立?哦7%3=1,應(yīng)輸出A?不對,7%3=1,第一個條件成立,輸出A?重新計算:7÷3=2余1,a%3=1,執(zhí)行第一個分支,輸出A,故選A(原解析修正:之前誤算,正確結(jié)果A)。27、以下關(guān)于數(shù)組的說法正確的是?()
A.數(shù)組長度可動態(tài)修改
B.數(shù)組元素可不同類型
C.數(shù)組在內(nèi)存中連續(xù)存儲
D.數(shù)組名可作為左值賦值
【答案】:答案解析:A數(shù)組長度定義后固定,B元素必須同類型,D數(shù)組名是常量(不可賦值),C正確,故選C。28、以下switch語句中,break語句的作用是?()
A.終止當(dāng)前case
B.終止switch語句
C.跳過下一個case
D.無作用
【答案】:答案解析:break在switch中用于跳出整個switch語句,避免case穿透,故選B。29、以下函數(shù)無返回值的是?()
A.intfun(){return0;}
B.voidfun(){printf("hello");}
C.floatfun(){return3.14;}
D.charfun(){return'b';}
【答案】:答案解析:void類型函數(shù)無返回值,A、C、D均有返回值,故選B。30、若inta[4]={1,2,3,4};則a[3]的值是?()
A.3
B.4
C.1
D.2
【答案】:答案解析:a[3]是第四個元素,值為4,故選B。31、以下關(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。32、以下哪個是合法的字符常量?()
A."a"
B.'ab'
C.'a'
D.a
【答案】:答案解析:字符常量用單引號包裹單個字符,A是字符串,B是兩個字符(錯誤),D是標(biāo)識符,故選C。33、以下數(shù)組定義錯誤的是?()
A.inta[0];
B.inta[5];
C.inta[]={1,2,3};
D.inta[5]={1,2,3};
【答案】:答案解析:數(shù)組長度不能為0,編譯報錯,其余正確,故選A。34、以下關(guān)于指針的說法錯誤的是?()
A.指針可指向變量、數(shù)組、函數(shù)
B.指針可進(jìn)行算術(shù)運算(如++、--)
C.指針可指向自身
D.指針可用于動態(tài)內(nèi)存分配
【答案】:答案解析:指針不能指向自身(類型不匹配),A、B、D說法正確,故選C。35、以下二維數(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個(補0),C標(biāo)準(zhǔn)初始化,D元素超6個,故選C。36、數(shù)組作為函數(shù)參數(shù)時,函數(shù)形參不能是?()
A.inta[]
B.int*a
C.inta[5]
D.inta
【答案】:答案解析:D中inta是普通變量,不能接收數(shù)組名(地址),A、B、C均可作為數(shù)組形參,故選D。37、以下循環(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。38、以下if語句中,條件表達(dá)式正確的是?()
A.if(x=5)printf("yes");
B.if(x==5)printf("yes");
C.if(x=5;)printf("yes");
D.if(x==5;)printf("yes");
【答案】:答案解析:if條件需是判斷表達(dá)式(==),A是賦值,C、D多加分號,故選B。39、若inta[4]={10,20,30,40};則*(a+2)的值是?()
A.20
B.30
C.40
D.10
【答案】:答案解析:a+2是第三個元素地址,*(a+2)=a[2]=30,故選B。40、若intx=5;執(zhí)行if(x>3&&x<7)printf("yes");elseprintf("no");輸出結(jié)果是?()
A.yes
B.no
C.yesno
D.無輸出
【答案】:答案解析:x=5>3且<7,條件為真,輸出yes,故選A。41、若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。42、若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。43、指針作為函數(shù)參數(shù)時,傳遞的是?()
A.指針的值
B.指針的地址
C.變量的值
D.變量的地址
【答案】:答案解析:指針傳參本質(zhì)是傳遞變量地址,函數(shù)中通過指針可修改實參值,故選D。44、以下if語句中,邏輯運算符使用正確的是?()
A.if(x>3&&x<7)
B.if(x>3&x<7)
C.if(x>3|||x<7)
D.if(x>3||x<7)
【答案】:答案解析:邏輯與用&&,邏輯或用||,B是按位與,C多寫||,D邏輯錯誤(x>3或x<7恒為真),故選A。45、若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。46、若intx=5;執(zhí)行以下代碼后輸出結(jié)果是?()if(x>10)pri
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 新建泵房施工方案
- 鋼板雕塑施工方案(3篇)
- 綠色建筑專項施工方案
- 2026年歷史文化名城及其特色文化問答卷
- 2025至2030中國智慧零售行業(yè)市場供需分析及投資價值評估報告
- 金融決策支持系統(tǒng)-第2篇
- 非結(jié)構(gòu)化數(shù)據(jù)監(jiān)管
- 2026年英文編輯技能及寫作筆試題庫
- 2026年歷史事件分析文化傳承題庫
- 2026年體育教練員技能測試題運動訓(xùn)練與運動損傷預(yù)防
- 光伏電站巡檢培訓(xùn)課件
- 中建建筑電氣系統(tǒng)調(diào)試指導(dǎo)手冊
- 年末節(jié)前安全教育培訓(xùn)
- 安全生產(chǎn)麻痹思想僥幸心理
- GB/T 93-2025緊固件彈簧墊圈標(biāo)準(zhǔn)型
- 建設(shè)工程測繪驗線標(biāo)準(zhǔn)報告模板
- 消防廉潔自律課件大綱
- 統(tǒng)編版九年級上冊語文期末復(fù)習(xí):全冊重點考點手冊
- 2025年11月15日江西省市直遴選筆試真題及解析(B卷)
- 金太陽陜西省2028屆高一上學(xué)期10月月考物理(26-55A)(含答案)
- 小學(xué)生科普小知識:靜電
評論
0/150
提交評論