版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
大學(xué)c語言的期末試題第一部分單選題(50題)1、以下函數(shù)參數(shù)為指針的是?()
A.voidfun(int*a){}
B.voidfun(inta){}
C.voidfun(inta[]){}
D.A和C
【答案】:答案解析:A是指針參數(shù),C數(shù)組名參數(shù)本質(zhì)是指針,B是值參數(shù),故選D。2、若intx=5;則表達(dá)式++x的結(jié)果是?()
A.5
B.6
C.4
D.7
【答案】:答案解析:++x是前置自增,先自增(x變?yōu)?)再參與運算,結(jié)果為6,故選B。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ù)調(diào)用時,實參的順序必須與形參的順序?()
A.一致
B.相反
C.無關(guān)
D.部分一致
【答案】:答案解析:實參和形參需按順序一一對應(yīng)(類型、個數(shù)、順序匹配),否則可能導(dǎo)致邏輯錯誤,故選A。5、shortint類型的有符號取值范圍是?()
A.0~65535
B.-32768~32767
C.-2147483648~2147483647
D.無固定范圍
【答案】:答案解析:16位shortint有符號取值標(biāo)準(zhǔn)為-32768~32767,無符號為0~65535,故選B。6、若inta[5]={1,2,3};則a[3]的值是?()
A.0
B.3
C.隨機(jī)值
D.無定義
【答案】:答案解析:初始化時未賦值的元素默認(rèn)為0,a[3]=0,故選A。7、以下函數(shù)調(diào)用時,實參為常量的是?()
A.fun(5);
B.fun(a);
C.fun(&a);
D.fun("abc");
【答案】:答案解析:A中5是常量,B是變量,C是變量地址,D是字符串常量,題目問“常量”,A正確,故選A。8、以下函數(shù)調(diào)用正確的是?()
A.fun();
B.fun(1,2);
C.fun("test");
D.取決于函數(shù)定義
【答案】:答案解析:函數(shù)調(diào)用是否正確取決于函數(shù)定義(參數(shù)類型、個數(shù)),A、B、C均可能正確,故選D。9、以下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。10、以下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。11、函數(shù)返回值的類型與return語句中表達(dá)式類型不一致時,會?()
A.編譯錯誤
B.自動強(qiáng)制轉(zhuǎn)換為函數(shù)返回類型
C.程序崩潰
D.無影響
【答案】:答案解析:編譯器會將return表達(dá)式類型強(qiáng)制轉(zhuǎn)換為函數(shù)返回類型(可能丟失精度),不報錯,故選B。12、若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。13、以下指針與函數(shù)的關(guān)系正確的是?()
A.函數(shù)名是函數(shù)的地址
B.函數(shù)指針可指向函數(shù)
C.可通過函數(shù)指針調(diào)用函數(shù)
D.以上都正確
【答案】:答案解析:A、B、C均是函數(shù)與指針的基本關(guān)系,故選D。14、以下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。15、若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。16、若inta=10,*p=&a,q=p;則q的值是?()
A.10
B.&a
C.p
D.無定義
【答案】:答案解析:q=p使q指向a,*q=10,故選A。17、以下函數(shù)聲明錯誤的是?()
A.voidfun(int);
B.voidfun(inta);
C.voidfun(inta,intb);
D.voidfun(inta;intb);
【答案】:答案解析:函數(shù)聲明中參數(shù)用逗號分隔,不能用分號,D語法錯誤,故選D。18、下列字符串常量定義正確的是?()
A.'abc'
B."abc"
C.abc
D."a""b"
【答案】:答案解析:字符串常量用雙引號包裹,單引號用于字符常量,C是標(biāo)識符,D語法錯誤,故選B。19、若inti=3;執(zhí)行do{printf("%d",i);i--;}while(i>=1);輸出結(jié)果是?()
A.321
B.123
C.3210
D.無輸出
【答案】:答案解析:do-while先執(zhí)行,i從3減到1,輸出321,故選A。20、若inti=0;執(zhí)行do{i++;printf("%d",i);}while(i<=2);輸出結(jié)果是?()
A.123
B.012
C.12
D.無輸出
【答案】:答案解析:do-while執(zhí)行3次,i=1、2、3,輸出123,故選A。21、以下關(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。22、do-while循環(huán)的特點是?()
A.先判斷條件,后執(zhí)行循環(huán)體
B.先執(zhí)行循環(huán)體,后判斷條件
C.條件不滿足時也不執(zhí)行循環(huán)體
D.只能執(zhí)行一次
【答案】:答案解析:do-while是“先執(zhí)行后判斷”,至少執(zhí)行一次循環(huán)體,for和while是“先判斷后執(zhí)行”,故選B。23、以下關(guān)于空指針的定義正確的是?()
A.#defineNULL0
B.#defineNULL(void*)0
C.int*p=NULL;
D.以上都正確
【答案】:答案解析:A、B是NULL的常見定義,C是定義空指針,均正確,故選D。24、函數(shù)參數(shù)的默認(rèn)值在______指定?()
A.函數(shù)定義時
B.函數(shù)聲明時
C.函數(shù)調(diào)用時
D.C語言不支持默認(rèn)參數(shù)
【答案】:答案解析:標(biāo)準(zhǔn)C語言不支持函數(shù)參數(shù)默認(rèn)值(C++支持),故選D。25、若charstr="hello";則str[1]的值是?()
A.'h'
B.'e'
C.'l'
D.'\0'
【答案】:答案解析:str是字符串首地址,str[1]等價于(str+1),值為'e',故選B。26、若inta[4]={10,20,30,40};則a+1表示?()
A.10的地址
B.20的地址
C.30的地址
D.40的地址
【答案】:答案解析:a是首地址(a[0]=10),a+1是a[1](20)的地址,故選B。27、以下函數(shù)定義中,參數(shù)為兩個int類型的是?()
A.voidfun(inta,floatb){}
B.voidfun(inta,intb){}
C.voidfun(floata,intb){}
D.voidfun(inta,charb){}
【答案】:答案解析:B中兩個參數(shù)均為int類型,其余選項參數(shù)類型不匹配,故選B。28、若inti=1;執(zhí)行while(i<5){printf("%d",i);i+=2;}輸出結(jié)果是?()
A.13
B.135
C.1234
D.無輸出
【答案】:答案解析:i初始1,每次加2,執(zhí)行2次(1、3),輸出13,故選A。29、以下switch語句語法錯誤的是?()
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ù),編譯報錯,故選D。30、指針的核心優(yōu)勢是?()
A.間接訪問變量,靈活操作內(nèi)存
B.提高程序效率,減少內(nèi)存開銷
C.支持動態(tài)內(nèi)存分配和函數(shù)回調(diào)
D.以上都正確
【答案】:答案解析:指針的核心優(yōu)勢包括間接訪問、高效、動態(tài)內(nèi)存、回調(diào)等,故選D。31、C語言程序編譯的正確順序是?()
A.預(yù)處理→編譯→匯編→鏈接
B.編譯→預(yù)處理→匯編→鏈接
C.預(yù)處理→匯編→編譯→鏈接
D.鏈接→編譯→匯編→預(yù)處理
【答案】:答案解析:C程序編譯流程為預(yù)處理(處理#命令)→編譯(生成匯編代碼)→匯編(生成目標(biāo)文件)→鏈接(生成可執(zhí)行文件),故選A。32、以下哪個數(shù)據(jù)類型用于存儲單個字符?()
A.int
B.char
C.float
D.double
【答案】:答案解析:char用于存儲單個字符(ASCII碼),int存儲整數(shù),float/double存儲浮點數(shù),故選B。33、以下數(shù)組初始化錯誤的是?()
A.inta[5]={0};
B.inta[]={1,2,3};
C.inta[5]={1,2,3};
D.inta[5]={1,2,3,4,5,6};
【答案】:答案解析:D初始化元素個數(shù)超數(shù)組長度(5),編譯報錯,A、B、C正確,故選D。34、以下哪個是合法的字符常量?()
A."a"
B.'ab'
C.'a'
D.a
【答案】:答案解析:字符常量用單引號包裹單個字符,A是字符串,B是兩個字符(錯誤),D是標(biāo)識符,故選C。35、若inta[4]={1,2,3,4},p=a;執(zhí)行p++后,*p的值是?()
A.1
B.2
C.3
D.4
【答案】:答案解析:*p++先解引用(值為1),再p自增(指向a[1]),*p=2,故選B。36、以下switch語句中,break語句的作用是?()
A.終止當(dāng)前case
B.終止switch語句
C.跳過下一個case
D.無作用
【答案】:答案解析:break在switch中用于跳出整個switch語句,避免case穿透,故選B。37、以下for循環(huán)中,循環(huán)變量更新表達(dá)式為“i-=2”的是?()
A.for(i=10;i>0;i-=2)
B.for(i=0;i<10;i+=2)
C.for(i=10;i>0;i--)
D.for(i=0;i<10;i=2)
【答案】:答案解析:i-=2等價于i=i-2,A的更新表達(dá)式正確,故選A。38、若intx=1;執(zhí)行switch(x){case1:printf("1");break;case1:printf("2");break;}會出現(xiàn)什么情況?()
A.輸出1
B.輸出2
C.編譯錯誤
D.運行錯誤
【答案】:答案解析:case后常量不能重復(fù),編譯時會報錯,故選C。39、函數(shù)返回值通過______語句返回?()
A.printf
B.scanf
C.return
D.break
【答案】:答案解析:return語句用于函數(shù)返回值,printf輸出,scanf輸入,break跳出循環(huán)/switch,故選C。40、以下數(shù)組定義錯誤的是?()
A.inta[5];
B.inta[5]={1,2,3,4,5};
C.inta[5]={1,2,3,4,5,6};
D.inta[]={1,2,3,4,5};
【答案】:答案解析:C初始化元素超5個,編譯報錯,其余正確,故選C。41、若intx=4;執(zhí)行switch(x){case2:printf("2");break;default:printf("0");case4:printf("4");break;}輸出結(jié)果是?()
A.04
B.4
C.204
D.無輸出
【答案】:答案解析:x=4匹配case4,執(zhí)行輸出4,break跳出,故選B。42、以下關(guān)于指針的說法正確的是?()
A.野指針是指向無效地址的指針
B.空指針是野指針的一種
C.避免野指針需初始化并及時置空
D.以上都正確
【答案】:答案解析:A、B、C均是野指針的核心知識點,故選D。43、若inti=0;執(zhí)行for(;i<5;){printf("%d",i);i++;}輸出結(jié)果是?()
A.01234
B.12345
C.無限循環(huán)
D.無輸出
【答案】:答案解析:for循環(huán)初始化和條件省略,循環(huán)體中i自增,執(zhí)行5次,輸出01234,故選A。44、以下哪個關(guān)鍵字用于定義整型變量?()
A.char
B.int
C.float
D.double
【答案】:答案解析:int定義整型,char字符型,float單精度浮點型,double雙精度浮點型,故選B。45、以下數(shù)組定義中,長度為5的是?()
A.inta[5];
B.inta[]={1,2,3,4,5};
C.charstr[]="abcd";
D.以上都是
【答案】:答案解析
溫馨提示
- 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年中職第二學(xué)年(旅游服務(wù)與管理)旅游產(chǎn)品設(shè)計基礎(chǔ)測試題及答案
- 2025年高職(機(jī)電一體化技術(shù))傳感器應(yīng)用技術(shù)綜合測試題及答案
- 行政助理職業(yè)發(fā)展指南
- 社群營銷培訓(xùn)課件
- 2026四川巴中市公安局招聘警務(wù)輔助人員47人備考題庫有完整答案詳解
- 2025財達(dá)證券股份有限公司資產(chǎn)管理業(yè)務(wù)委員會招聘2人備考題庫及答案詳解一套
- 2026四川宜賓銘星中醫(yī)醫(yī)院人才招募中醫(yī)醫(yī)生、外科醫(yī)生、編碼員備考題庫有完整答案詳解
- 2026中國科學(xué)院軟件研究所天基綜合信息系統(tǒng)全國重點實驗室招聘94人備考題庫含答案詳解
- 2026浙江溫州市廣播電視監(jiān)測中心招聘編外合同制人員1人備考題庫參考答案詳解
- 2026云南大理州劍川縣文化和旅游局招聘2人備考題庫及答案詳解一套
- 2025年中小學(xué)教師正高級職稱評聘答辯試題(附答案)
- 現(xiàn)代企業(yè)管理體系架構(gòu)及運作模式
- 2025年江蘇省泰州市保安員理論考試題庫及答案(完整)
- 公司酶制劑發(fā)酵工工藝技術(shù)規(guī)程
- 2025省供銷社招聘試題與答案
- 大數(shù)據(jù)分析在供熱中的應(yīng)用方案
- 污泥安全管理制度范本
- 開題報告范文基于人工智能的醫(yī)學(xué)像分析與診斷系統(tǒng)設(shè)計
- 大黃附子細(xì)辛湯課件
- 單位內(nèi)部化妝培訓(xùn)大綱
- 高校行政管理流程及案例分析
評論
0/150
提交評論