版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
計算機(jī)二級c語言真題第一部分單選題(50題)1、以下指針運算錯誤的是?()
A.inta=5,*p=&a;p++;
B.inta=5,*p=&a;*p++;
C.inta=5,*p=&a;p=&a+1;
D.inta=5,*p=&a;p=p+2;
【答案】:答案解析:&a是地址常量,不能進(jìn)行算術(shù)運算(&a+1錯誤),A、B、D均正確,故選C。2、若inta=5,p=&a;則&p的值是?()
A.5
B.&a
C.p
D.無定義
【答案】:答案解析:*&p等價于p,即指針p自身的值(a的地址),故選C。3、若inti=0;執(zhí)行while(1){if(i==3)break;printf("%d",i);i++;}輸出結(jié)果是?()
A.012
B.0123
C.無限循環(huán)
D.無輸出
【答案】:答案解析:while(1)是無限循環(huán),i=3時break,輸出012,故選A。4、以下哪個條件表達(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。5、以下哪個不是C語言的關(guān)鍵字?()
A.if
B.else
C.then
D.for
【答案】:答案解析:then不是C語言關(guān)鍵字,if(條件)、else(否則)、for(循環(huán))均是,故選C。6、函數(shù)調(diào)用時,實參和形參的個數(shù)必須?()
A.相等
B.實參多于形參
C.形參多于實參
D.無要求
【答案】:答案解析:函數(shù)調(diào)用時實參和形參個數(shù)、類型需匹配,否則編譯錯誤,故選A。7、若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。8、若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。9、若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。10、以下關(guān)于指針的說法正確的是?()
A.野指針是指向無效地址的指針
B.空指針是野指針的一種
C.避免野指針需初始化并及時置空
D.以上都正確
【答案】:答案解析:A、B、C均是野指針的核心知識點,故選D。11、若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。12、數(shù)組元素的下標(biāo)從______開始?()
A.0
B.1
C.-1
D.任意
【答案】:答案解析:C語言數(shù)組下標(biāo)從0開始,是固定規(guī)則,故選A。13、以下函數(shù)聲明中,返回類型為float的是?()
A.floatfun();
B.voidfun(floata);
C.intfun(floata);
D.charfun(floata);
【答案】:答案解析:A返回類型為float,B無返回值,C返回類型int,D返回類型char,故選A。14、以下關(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。15、C語言中,宏定義的預(yù)處理命令關(guān)鍵字是?()
A.include
B.define
C.ifdef
D.endif
【答案】:答案解析:#define用于宏定義,#include用于包含頭文件,#ifdef/endif是條件編譯,故選B。16、若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。17、數(shù)組名作為函數(shù)參數(shù)時,函數(shù)形參的正確寫法是?()
A.inta[]
B.int*a
C.inta[5]
D.以上都是
【答案】:答案解析:數(shù)組形參可寫為inta[]、int*a(指針)、inta[5](長度可忽略),本質(zhì)均為指針,故選D。18、以下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。19、以下二維數(shù)組定義中,行數(shù)為2的是?()
A.inta[2][3];
B.inta[][3]={1,2,3,4,5,6};
C.inta[2][3]={1,2,3,4,5};
D.以上都是
【答案】:答案解析:A行數(shù)2,B初始化6個元素(3列×2行),C行數(shù)2,故選D。20、以下switch語句中,default的位置可以在?()
A.所有case之前
B.所有case之后
C.兩個case之間
D.以上都可以
【答案】:答案解析:default位置靈活,可在case前、后或中間,不影響執(zhí)行邏輯,故選D。21、以下if-elseif語句的執(zhí)行邏輯是?()if(x<0)printf("負(fù)");elseif(x==0)printf("零");elseprintf("正");
A.多個條件可同時滿足
B.僅執(zhí)行第一個滿足的條件分支
C.所有滿足的條件分支都執(zhí)行
D.無滿足條件則不執(zhí)行
【答案】:答案解析:if-elseif是互斥分支,僅執(zhí)行第一個滿足條件的分支,故選B。22、以下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。23、若intx=6;執(zhí)行if(x<5)printf("A");else{printf("B");printf("C");}輸出結(jié)果是?()
A.A
B.BC
C.ABC
D.無輸出
【答案】:答案解析:x=6不滿足if,執(zhí)行else代碼塊,輸出BC,故選B。24、C語言程序的入口函數(shù)是?()
A.main()
B.printf()
C.scanf()
D.main
【答案】:答案解析:所有C程序從main()函數(shù)開始執(zhí)行,必須有且僅有一個,故選A。25、若inti=1;執(zhí)行while(i<=4){printf("%d",i);i+=3;}輸出結(jié)果是?()
A.14
B.1234
C.1
D.無輸出
【答案】:答案解析:i初始1,加3后4,執(zhí)行2次,輸出14,故選A。26、若inta=2,b=4;執(zhí)行if(a==b)a=0;elseb=0;后a和b的值分別是?()
A.0,4
B.2,0
C.0,0
D.2,4
【答案】:答案解析:a==b為假,執(zhí)行else,b=0,a保持2,故選B。27、若inti=1;執(zhí)行do{printf("%d",i);i++;}while(i<=3);輸出結(jié)果是?()
A.123
B.1234
C.012
D.無輸出
【答案】:答案解析:do-while先執(zhí)行一次(輸出1,i=2),再判斷,共執(zhí)行3次,輸出123,故選A。28、以下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。29、以下關(guān)于數(shù)組初始化的說法正確的是?()
A.數(shù)組必須初始化
B.數(shù)組初始化時元素個數(shù)不能少于長度
C.數(shù)組初始化時可部分賦值
D.數(shù)組初始化后不能修改
【答案】:答案解析:數(shù)組可部分賦值(未賦值元素默認(rèn)0),A數(shù)組可不用初始化,B可少于長度,D數(shù)組元素可修改,故選C。30、以下關(guān)于指針的說法錯誤的是?()
A.指針可指向變量、數(shù)組、函數(shù)
B.指針可進(jìn)行算術(shù)運算(如++、--)
C.指針可指向自身
D.指針可用于動態(tài)內(nèi)存分配
【答案】:答案解析:指針不能指向自身(類型不匹配),A、B、D說法正確,故選C。31、若inta[3]={1,2,3},p=a;則(p+2)的值是?()
A.1
B.2
C.3
D.無定義
【答案】:答案解析:p+2指向a[2],解引用*(p+2)=a[2]=3,故選C。32、以下switch語句中,正確使用字符常量的是?()
A.switch(c){case'A':printf("A");break;}
B.switch(c){caseA:printf("A");break;}
C.switch(c){case"A":printf("A");break;}
D.switch(c){case'a':'b':printf("ab");break;}
【答案】:答案解析:字符常量用單引號,B是標(biāo)識符,C是字符串,D語法錯誤(多個case需分開),故選A。33、若inta=3,b=5;執(zhí)行以下代碼后輸出結(jié)果是?()if(a>b)printf("A");elseprintf("B");
A.A
B.B
C.AB
D.無輸出
【答案】:答案解析:a=3<b=5,條件為假,執(zhí)行else分支,輸出B,故選B。34、若inta=7,*p=&a;執(zhí)行++*p;后a的值是?()
A.7
B.8
C.&a
D.無定義
【答案】:答案解析:++*p等價于++(*p),先解引用取a的值,再加1(a=8),故選B。35、轉(zhuǎn)義字符\0的作用是?()
A.表示空格
B.表示制表符
C.字符串結(jié)束標(biāo)志
D.換行
【答案】:答案解析:\0ASCII碼為0,是字符串默認(rèn)結(jié)束標(biāo)志,不計入長度,故選C。36、若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。37、函數(shù)參數(shù)傳遞中,值傳遞的特點是?()
A.形參修改影響實參
B.形參是實參的副本
C.傳遞的是變量地址
D.用于數(shù)組傳參
【答案】:答案解析:值傳遞時形參是實參的拷貝,修改形參不影響實參,地址傳遞才影響實參,故選B。38、若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。39、以下指針與函數(shù)的關(guān)系正確的是?()
A.函數(shù)名是函數(shù)的地址
B.函數(shù)指針可指向函數(shù)
C.可通過函數(shù)指針調(diào)用函數(shù)
D.以上都正確
【答案】:答案解析:A、B、C均是函數(shù)與指針的基本關(guān)系,故選D。40、以下哪個數(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。41、以下哪個關(guān)鍵字用于定義整型變量?()
A.char
B.int
C.float
D.double
【答案】:答案解析:int定義整型,char字符型,float單精度浮點型,double雙精度浮點型,故選B。42、以下哪個函數(shù)用于讀取字符?()
A.putchar()
B.gets()
C.getchar()
D.printf()
【答案】:答案解析:getchar()讀取單個字符,puts()輸出字符串,gets()讀取字符串(已淘汰),故選C。43、若int*p=(int)malloc(sizeof(int));則p的值是?()
A.0
B.隨機(jī)值
C.1
D.無定義
【答案】:答案解析:malloc分配的內(nèi)存未初始化,值為隨機(jī)值,故選B。44、若inta[5];執(zhí)行a[0]=1;a[1]=2;則a[2]的值是?()
A.0
B.3
C.隨機(jī)值
D.無定義
【答案】:答案解析:全局?jǐn)?shù)組默認(rèn)0,局部數(shù)組未初始化是隨機(jī)值?題目未說明存儲類別,通常默認(rèn)全局,a[2]=0,故選A。45、以下關(guān)于函數(shù)遞歸的說法錯誤的是?()
A.必須有終止條件
B.可能導(dǎo)致棧溢出
C.效率比循環(huán)高
D.代碼簡潔
【答案】:答案解析:遞歸調(diào)用會創(chuàng)建棧幀,效率低于循環(huán),A、B、D正確,C錯誤,故選C。46、指針與結(jié)構(gòu)體的關(guān)系,以下說法正確的是?()
A.結(jié)構(gòu)體指針
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 呼吸系統(tǒng)疾病患者的營養(yǎng)支持
- 勞動爭議調(diào)查試題和答案
- 獸醫(yī)學(xué)題庫及答案
- 中級會計師考試模擬試題及答案
- 企業(yè)文化試題與答案(供參考)
- 《傳染病護(hù)理》考試試卷及答案
- 產(chǎn)科規(guī)培考試試題附答案
- 鹽山縣輔警考試公安基礎(chǔ)知識考試真題庫及答案
- 教師招聘考試教育學(xué)題庫及答案
- 稅法考試真題卷子及答案
- (一診)重慶市九龍坡區(qū)區(qū)2026屆高三學(xué)業(yè)質(zhì)量調(diào)研抽測(第一次)物理試題
- 2026新疆伊犁州新源縣總工會面向社會招聘工會社會工作者3人考試備考試題及答案解析
- 2026年榆能集團(tuán)陜西精益化工有限公司招聘備考題庫完整答案詳解
- 2026廣東省環(huán)境科學(xué)研究院招聘專業(yè)技術(shù)人員16人筆試參考題庫及答案解析
- 2026年保安員理論考試題庫
- 駱駝祥子劇本殺課件
- DGTJ08-10-2022 城鎮(zhèn)天然氣管道工程技術(shù)標(biāo)準(zhǔn)
- 加油站安保反恐工作總結(jié)分享范文
- 反洗錢風(fēng)險自評價制度
- 隱框、半隱框玻璃幕墻分項工程檢驗批質(zhì)量驗收記錄
- 包扎技術(shù)課件
評論
0/150
提交評論