版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
清華c語言期末測試題第一部分單選題(50題)1、以下switch語句中,case后的常量可以是?()
A.整數(shù)
B.字符
C.枚舉常量
D.以上都可以
【答案】:答案解析:switch的case后必須是整型常量(整數(shù)、字符、枚舉常量,字符本質(zhì)是ASCII碼整數(shù)),故選D。2、以下if語句中,賦值表達(dá)式作為條件的是?()
A.if(x==3)
B.if(x=3)
C.if(x>3)
D.if(x!=3)
【答案】:答案解析:x=3是賦值表達(dá)式,結(jié)果為3(非0,真),其余是判斷表達(dá)式,故選B。3、以下數(shù)組定義錯(cuò)誤的是?()
A.inta[0];
B.inta[5];
C.inta[]={1,2,3};
D.inta[5]={1,2,3};
【答案】:答案解析:數(shù)組長度不能為0,編譯報(bào)錯(cuò),其余正確,故選A。4、C語言中,語句結(jié)束的標(biāo)志是?()
A.逗號
B.分號
C.冒號
D.句號
【答案】:答案解析:C語言單條語句以分號(;)結(jié)尾,復(fù)合語句用{}包裹,故選B。5、以下數(shù)組初始化中,未賦值元素默認(rèn)為0的是?()
A.inta[5]={1,2,3};
B.charstr[5];
C.inta[5];
D.以上都是
【答案】:答案解析:全局?jǐn)?shù)組未初始化默認(rèn)為0,局部數(shù)組未初始化是隨機(jī)值,A初始化部分元素,未賦值默認(rèn)為0,故選A。6、以下哪個(gè)表達(dá)式可訪問數(shù)組a的第i個(gè)元素(i從1開始)?()
A.a[i]
B.a[i-1]
C.*(a+i)
D.*(a+i-1)
【答案】:答案解析:數(shù)組下標(biāo)從0開始,第i個(gè)元素對應(yīng)下標(biāo)i-1,a[i-1]正確,C、D是指針訪問(對應(yīng)下標(biāo)i),故選B。7、以下switch語句中,default的位置可以在?()
A.所有case之前
B.所有case之后
C.兩個(gè)case之間
D.以上都可以
【答案】:答案解析:default位置靈活,可在case前、后或中間,不影響執(zhí)行邏輯,故選D。8、以下關(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。9、函數(shù)指針的作用是?()
A.存儲(chǔ)函數(shù)的地址
B.調(diào)用函數(shù)
C.實(shí)現(xiàn)回調(diào)函數(shù)
D.以上都正確
【答案】:答案解析:函數(shù)指針存儲(chǔ)函數(shù)地址,可通過指針調(diào)用函數(shù),常用于回調(diào)函數(shù),故選D。10、以下if-elseif語句的執(zhí)行邏輯是?()if(x<0)printf("負(fù)");elseif(x==0)printf("零");elseprintf("正");
A.多個(gè)條件可同時(shí)滿足
B.僅執(zhí)行第一個(gè)滿足的條件分支
C.所有滿足的條件分支都執(zhí)行
D.無滿足條件則不執(zhí)行
【答案】:答案解析:if-elseif是互斥分支,僅執(zhí)行第一個(gè)滿足條件的分支,故選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個(gè)(補(bǔ)0),C標(biāo)準(zhǔn)初始化,D元素超6個(gè),故選C。12、邏輯表達(dá)式!5的結(jié)果是?()
A.0
B.1
C.5
D.真
【答案】:答案解析:5為真,!是邏輯非,真變假(0),故選A。13、若inta=3;執(zhí)行if(++a>3)printf("A");elseprintf("B");輸出結(jié)果是?()
A.A
B.B
C.AB
D.無輸出
【答案】:答案解析:++a是前置自增,a變?yōu)?>3,條件為真,輸出A,故選A。14、以下函數(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。15、以下switch語句語法錯(cuò)誤的是?()
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)型,語法錯(cuò)誤,故選C。16、若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í)行第二個(gè)分支,輸出B,故選B。17、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。18、以下函數(shù)無返回值的是?()
A.intfun(){return0;}
B.voidfun(){printf("hello");}
C.floatfun(){return3.14;}
D.charfun(){return'b';}
【答案】:答案解析:void類型函數(shù)無返回值,A、C、D均有返回值,故選B。19、以下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。20、以下循環(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。21、以下指針定義正確的是?()
A.int*p;
B.char*q;
C.float*r;
D.以上都正確
【答案】:答案解析:A指向int,B指向char,C指向float,均符合指針定義語法,故選D。22、以下for循環(huán)中,用于計(jì)算1到5的平方和的是?()
A.s=0;for(i=1;i<=5;i++)s+=ii;
B.s=0;for(i=1;i<=5;i++)s+=i2;
C.s=1;for(i=1;i<=5;i++)s*=i;
D.s=0;for(i=1;i<=5;i++)s+=i+i;
【答案】:答案解析:平方和是12+22+32+42+52=1+4+9+16+25=55,A的邏輯正確,故選A。23、以下循環(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。24、函數(shù)返回值通過______語句返回?()
A.printf
B.scanf
C.return
D.break
【答案】:答案解析:return語句用于函數(shù)返回值,printf輸出,scanf輸入,break跳出循環(huán)/switch,故選C。25、函數(shù)參數(shù)的默認(rèn)值在______指定?()
A.函數(shù)定義時(shí)
B.函數(shù)聲明時(shí)
C.函數(shù)調(diào)用時(shí)
D.C語言不支持默認(rèn)參數(shù)
【答案】:答案解析:標(biāo)準(zhǔn)C語言不支持函數(shù)參數(shù)默認(rèn)值(C++支持),故選D。26、數(shù)組名作為函數(shù)參數(shù)時(shí),函數(shù)形參的正確寫法是?()
A.inta[]
B.int*a
C.inta[5]
D.以上都是
【答案】:答案解析:數(shù)組形參可寫為inta[]、int*a(指針)、inta[5](長度可忽略),本質(zhì)均為指針,故選D。27、以下哪個(gè)函數(shù)用于讀取字符?()
A.putchar()
B.gets()
C.getchar()
D.printf()
【答案】:答案解析:getchar()讀取單個(gè)字符,puts()輸出字符串,gets()讀取字符串(已淘汰),故選C。28、以下函數(shù)定義錯(cuò)誤的是?()
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,語法錯(cuò)誤,故選D。29、若inti=5,s=0;執(zhí)行while(i>0){s+=i;i--;}后s的值是?()
A.15
B.10
C.5
D.0
【答案】:答案解析:累加5+4+3+2+1=15,s=15,故選A。30、指針變量的大小取決于?()
A.指向變量的類型
B.編譯器和系統(tǒng)(32位4字節(jié),64位8字節(jié))
C.指針變量的名稱
D.變量的值
【答案】:答案解析:指針大小與指向類型無關(guān),取決于系統(tǒng)位數(shù)(32位4B,64位8B),故選B。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時(shí)break,輸出0123,故選A。32、若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í)行第三個(gè)分支,輸出C,故選C。33、遞歸函數(shù)的優(yōu)點(diǎn)是?()
A.代碼簡潔,邏輯清晰
B.效率高,占用內(nèi)存少
C.避免棧溢出
D.適合所有問題
【答案】:答案解析:遞歸優(yōu)點(diǎn)是代碼簡潔(如階乘、斐波那契數(shù)列),缺點(diǎn)是效率低、占用棧空間多(可能溢出),故選A。34、若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。35、以下if語句中,邏輯非運(yùn)算符使用正確的是?()
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等價(jià)于x!=0,邏輯不同,故選D。36、若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。37、以下if-else語句中,代碼塊執(zhí)行順序正確的是?()
A.先執(zhí)行if條件,滿足則執(zhí)行if代碼塊,否則執(zhí)行else代碼塊
B.先執(zhí)行else代碼塊,再執(zhí)行if條件
C.同時(shí)執(zhí)行if和else代碼塊
D.僅執(zhí)行else代碼塊
【答案】:答案解析:if-else邏輯為“條件判斷→滿足執(zhí)行if,否則執(zhí)行else”,互斥執(zhí)行,故選A。38、以下switch語句語法錯(cuò)誤的是?()
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ù),編譯報(bào)錯(cuò),故選D。39、若inta=4;執(zhí)行a-=2;后a的值是?()
A.2
B.4
C.6
D.0
【答案】:答案解析:a-=2等價(jià)于a=a-2,4-2=2,故選A。40、若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。41、以下關(guān)于動(dòng)態(tài)內(nèi)存分配的說法正確的是?()
A.malloc函數(shù)用于動(dòng)態(tài)分配內(nèi)存,返回void*
B.free函數(shù)用于釋放動(dòng)態(tài)分配的內(nèi)存
C.動(dòng)態(tài)分配的內(nèi)存需手動(dòng)釋放,避免內(nèi)存泄漏
D.以上都正確
【答案】:答案解析:A、B、C均是動(dòng)態(tài)內(nèi)存分配的核心規(guī)則,故選D。42、以下函數(shù)參數(shù)為指針的是?()
A.voidfun(int*a){}
B.voidfun(inta){}
C.voidfun(inta[]){}
D.A和C
【答案】:答案解析:A是指針參數(shù),C數(shù)組名參數(shù)本質(zhì)是指針,B是值參數(shù),故選D。43、以下關(guān)于指針的說法錯(cuò)誤的是?()
A.指針可指向變量、數(shù)組、函數(shù)
B.指針可進(jìn)行算術(shù)運(yùn)算(如++、--)
C.指針可指向自身
D.指針可用于動(dòng)態(tài)內(nèi)存分配
【答案】:答案解析:指針不能指向自身(類型不匹配),A、B、D說法正確,故選C。44、若int*p=(int)malloc(sizeof(int));則p的值是?()
A.0
B.隨機(jī)值
C.1
D.無定義
【答案】:答案解析:malloc分配的內(nèi)存未初始化,值為隨機(jī)值,故選B。45、若inti=0;執(zhí)行for(i=0;i<5;i++){if(i==2)continue;print
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中職畜牧獸醫(yī)(寵物護(hù)理)試題及答案
- 2025年大學(xué)環(huán)境設(shè)計(jì)(環(huán)境設(shè)計(jì))試題及答案
- 2025年大學(xué)大四(教育學(xué))教育管理學(xué)基礎(chǔ)測試題及答案
- 2025年大學(xué)食品科學(xué)與工程(食品加工)試題及答案
- 2025年高職井巷工程(巷道施工)試題及答案
- 2026年建筑結(jié)構(gòu)(鋼結(jié)構(gòu)加固)試題及答案
- 2025年高職文化藝術(shù)管理(管理技術(shù)實(shí)操)試題及答案
- 2025年大學(xué)大二(藝術(shù)設(shè)計(jì))首飾設(shè)計(jì)綜合測試試題及答案
- 2025年高職職業(yè)健康安全管理(職業(yè)衛(wèi)生監(jiān)測)試題及答案
- 2025年高職第二學(xué)年(園林工程技術(shù))園林植物養(yǎng)護(hù)試題及答案
- JJF(機(jī)械) 1064-2021 運(yùn)動(dòng)場地材料沖擊吸收和垂直變形試驗(yàn)機(jī)校準(zhǔn)規(guī)范
- T CEC站用低壓交流電源系統(tǒng)剩余電流監(jiān)測裝置技術(shù)規(guī)范
- 個(gè)人工傷申請書
- 工程竣工移交單
- 起重機(jī)焊接結(jié)構(gòu)件制造工藝規(guī)程
- “振興杯”職業(yè)技能競賽(維修電工)備賽試題庫 (單選、多選題匯總)
- GB/T 25689-2010土方機(jī)械自卸車車廂容量標(biāo)定
- 攝像機(jī)外觀檢驗(yàn)標(biāo)準(zhǔn)
- 航標(biāo)和航標(biāo)配布專題培訓(xùn)課件
- 學(xué)習(xí)課件所有內(nèi)容歸類到此-etops運(yùn)行手冊
- 大棚番茄栽培技術(shù)課件
評論
0/150
提交評論