版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
電大c語言期末試題第一部分單選題(50題)1、函數(shù)返回值的類型由______決定?()
A.return語句中的表達(dá)式類型
B.函數(shù)定義時的返回類型
C.函數(shù)調(diào)用時的參數(shù)類型
D.編譯器默認(rèn)類型
【答案】:答案解析:函數(shù)返回類型在定義時指定,return表達(dá)式類型需與返回類型匹配(不匹配則強(qiáng)制轉(zhuǎn)換),故選B。2、以下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。3、指針與字符串的關(guān)系,以下說法正確的是?()
A.字符串常量是字符數(shù)組,數(shù)組名是指針
B.字符串可通過指針遍歷
C.字符指針可指向字符串常量
D.以上都正確
【答案】:答案解析:A、B、C均是指針與字符串的基本關(guān)系,故選D。4、若inta=3,b=4;則表達(dá)式ab++的值是?()
A.12
B.15
C.16
D.7
【答案】:答案解析:b++是后置自增,先參與運(yùn)算(ab=3*4=12),再自增(b變?yōu)?),故選A。5、以下函數(shù)調(diào)用正確的是?()
A.fun();
B.fun(1,2);
C.fun("test");
D.取決于函數(shù)定義
【答案】:答案解析:函數(shù)調(diào)用是否正確取決于函數(shù)定義(參數(shù)類型、個數(shù)),A、B、C均可能正確,故選D。6、以下字符串?dāng)?shù)組定義正確的是?()
A.charstr[5][10]={"hello","world"};
B.charstr[5][]={"hello","world"};
C.charstr[][10]={"hello","world","!"};
D.charstr[5][10]={"hello","world","!"};
【答案】:答案解析:B第二維不能省略,A、C、D均正確?D最完整(5行10列,初始化3個字符串),故選D。7、若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。8、若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。9、若inta[5]={10,20,30,40,50},p=a+3;則p的值是?()
A.30
B.40
C.50
D.無定義
【答案】:答案解析:a+3指向a[3],*p=40,故選B。10、若inta=5,p=&a;則&p的值是?()
A.5
B.&a
C.p
D.無定義
【答案】:答案解析:*&p等價于p,即指針p自身的值(a的地址),故選C。11、以下數(shù)組初始化正確的是?()
A.charstr[]="hello";
B.charstr[5]="hello";
C.charstr[]={'h','e','l','l','o'};
D.charstr[5]={'h','e','l','l','o','\0'};
【答案】:答案解析:A字符串自動加\0,B長度5不足以存hello(含\0共6個字符),C無\0(字符串不完整),D長度5超,故選A。12、以下哪個if語句的條件是“x是偶數(shù)且x大于10”?()
A.if(x%2==0&&x>10)
B.if(x%2=0&&x>10)
C.if(x%2==0||x>10)
D.if(x%2=0||x>10)
【答案】:答案解析:偶數(shù)判斷用x%2==0,邏輯與用&&,B是賦值,C、D是邏輯或,故選A。13、以下關(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。14、C語言中,語句結(jié)束的標(biāo)志是?()
A.逗號
B.分號
C.冒號
D.句號
【答案】:答案解析:C語言單條語句以分號(;)結(jié)尾,復(fù)合語句用{}包裹,故選B。15、若inti=0,s=0;執(zhí)行for(i=1;i<=4;i++)s+=i;后s的值是?()
A.10
B.9
C.8
D.7
【答案】:答案解析:累加1+2+3+4=10,s=10,故選A。16、若intx=3,y=5;執(zhí)行if(x>y)printf("x大");elseif(x==y)printf("相等");elseprintf("y大");輸出結(jié)果是?()
A.x大
B.相等
C.y大
D.無輸出
【答案】:答案解析:x=3<y=5,執(zhí)行else,輸出y大,故選C。17、以下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。18、若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。19、以下關(guān)于空指針的定義正確的是?()
A.#defineNULL0
B.#defineNULL(void*)0
C.int*p=NULL;
D.以上都正確
【答案】:答案解析:A、B是NULL的常見定義,C是定義空指針,均正確,故選D。20、若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。21、若inta[5]={10,20,30,40,50};則a[4]的值是?()
A.40
B.50
C.60
D.無定義
【答案】:答案解析:a[4]是第五個元素,值為50,故選B。22、若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。23、以下指針運(yùn)算錯誤的是?()
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ù)運(yùn)算(&a+1錯誤),A、B、D均正確,故選C。24、函數(shù)返回值的類型與return語句中表達(dá)式類型不一致時,會?()
A.編譯錯誤
B.自動強(qiáng)制轉(zhuǎn)換為函數(shù)返回類型
C.程序崩潰
D.無影響
【答案】:答案解析:編譯器會將return表達(dá)式類型強(qiáng)制轉(zhuǎn)換為函數(shù)返回類型(可能丟失精度),不報錯,故選B。25、若inta[3][4]={{1,2},{3,4,5},{6}};則a[0][1]的值是?()
A.1
B.2
C.3
D.4
【答案】:答案解析:a[0][1]是第一行第二列,值為2,故選B。26、C語言程序編譯的正確順序是?()
A.預(yù)處理→編譯→匯編→鏈接
B.編譯→預(yù)處理→匯編→鏈接
C.預(yù)處理→匯編→編譯→鏈接
D.鏈接→編譯→匯編→預(yù)處理
【答案】:答案解析:C程序編譯流程為預(yù)處理(處理#命令)→編譯(生成匯編代碼)→匯編(生成目標(biāo)文件)→鏈接(生成可執(zhí)行文件),故選A。27、數(shù)組在內(nèi)存中的存儲方式是?()
A.隨機(jī)存儲
B.連續(xù)存儲
C.鏈?zhǔn)酱鎯?/p>
D.散列存儲
【答案】:答案解析:數(shù)組元素在內(nèi)存中連續(xù)存放,便于通過下標(biāo)訪問,故選B。28、若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。29、以下關(guān)于函數(shù)的說法錯誤的是?()
A.函數(shù)可嵌套調(diào)用
B.函數(shù)可遞歸調(diào)用
C.函數(shù)可重定義
D.函數(shù)可聲明多次
【答案】:答案解析:C函數(shù)名不能重定義(重復(fù)定義編譯報錯),A、B、D正確,故選C。30、二維數(shù)組a[3][4]的元素個數(shù)是?()
A.7
B.12
C.3
D.4
【答案】:答案解析:3行4列,共3×4=12個元素,故選B。31、預(yù)處理命令#definePI3.14159的作用是?()
A.定義變量
B.定義常量
C.函數(shù)聲明
D.包含頭文件
【答案】:答案解析:#define是宏定義,用于定義常量(無分號,直接替換),故選B。32、以下函數(shù)調(diào)用正確的是?()
A.fun(5);
B.fun(3,4);
C.fun("hello");
D.取決于函數(shù)定義
【答案】:答案解析:函數(shù)調(diào)用需匹配函數(shù)定義的參數(shù)類型和個數(shù),A、B、C是否正確取決于函數(shù)定義,故選D。33、以下switch語句中,case后的常量可以是?()
A.整數(shù)
B.字符
C.枚舉常量
D.以上都可以
【答案】:答案解析:switch的case后必須是整型常量(整數(shù)、字符、枚舉常量,字符本質(zhì)是ASCII碼整數(shù)),故選D。34、以下哪個運(yùn)算符的優(yōu)先級最高?()
A.+
B.*
C.=
D.==
【答案】:答案解析:算術(shù)運(yùn)算符中*(乘)優(yōu)先級高于+(加),賦值(=)和關(guān)系(==)優(yōu)先級更低,故選B。35、以下關(guān)于指針的說法正確的是?()
A.指針可用于實(shí)現(xiàn)多返回值函數(shù)
B.指針可提高程序效率
C.指針可用于動態(tài)內(nèi)存分配
D.以上都正確
【答案】:答案解析:指針的核心用途包括多返回值、高效訪問、動態(tài)內(nèi)存分配,故選D。36、遞歸函數(shù)的終止條件是?()
A.函數(shù)調(diào)用自身
B.函數(shù)返回值為0
C.不再調(diào)用自身的條件
D.無終止條件
【答案】:答案解析:遞歸函數(shù)必須有終止條件(否則無限遞歸棧溢出),終止條件是不再調(diào)用自身的判斷,故選C。37、若inta=6;執(zhí)行a/=3;后a的值是?()
A.2
B.3
C.6
D.18
【答案】:答案解析:a/=3等價于a=a/3=6/3=2,故選A。38、以下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。39、以下轉(zhuǎn)義字符表示換行的是?()
A.\t
B.\n
C.\
D.\r
【答案】:答案解析:\t是制表符,\n是換行符,\是反斜杠,\r是回車符,故選B。40、continue語句在循環(huán)中的作用是?()
A.終止整個循環(huán)
B.跳過本次循環(huán)剩余部分,繼續(xù)下一次
C.暫停循環(huán)
D.無作用
【答案】:答案解析:continue跳過本次循環(huán)剩余代碼,直接進(jìn)入下一次循環(huán)條件判斷,故選B。41、以下switch語句中,break語句的作用是?()
A.終止當(dāng)前case
B.終止switch語句
C.跳過下一個case
D.無作用
【答案】:答案解析:break在switch中用于跳出整個switch語句,避免case穿透,故選B。42、do-while循環(huán)的特點(diǎ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。43、若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。44、以下數(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。45、若inti=0;執(zhí)行for(;;){if(i==4)break;printf("%d",i);i++;}
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 1.2我們都是社會的一員導(dǎo)學(xué)案(含答案)-2025-2026學(xué)年統(tǒng)編版道德與法治八年級上冊
- 2026麗水職業(yè)技術(shù)學(xué)院招聘專業(yè)技術(shù)人員19人備考題庫(一)及1套完整答案詳解
- 2026學(xué)年上海市文來中學(xué)(高中)教師招聘備考題庫及答案詳解(奪冠系列)
- 2026廣東陽江市陽春市高校畢業(yè)生就業(yè)見習(xí)招募備考題庫(第一期)及參考答案詳解
- 2026年長春市各縣(市)區(qū)事業(yè)單位公開招聘上半年入伍高校畢業(yè)生第1號備考題庫補(bǔ)充備考題庫及答案詳解(新)
- 行業(yè)營銷活動策劃方案模板多渠道營銷支持
- 環(huán)保公益活動策劃互動方案
- XX初中2026年春季學(xué)期學(xué)生意外傷害處理流程
- 家居設(shè)計責(zé)任承諾書范文8篇
- 企業(yè)數(shù)據(jù)訪問權(quán)限精細(xì)化管理方案
- 行為面試法培訓(xùn)課件
- 征信培訓(xùn)管理辦法
- 門診部醫(yī)保內(nèi)部管理制度
- 宮頸機(jī)能不全超聲診斷與治療
- 倉庫物品丟失管理辦法
- 工藝管線焊后熱處理施工技術(shù)方案
- 無人機(jī)行業(yè)研究報告
- 混凝土護(hù)欄整修方案(3篇)
- AED日常管理制度
- 城市軌道交通聯(lián)絡(luò)通道凍結(jié)法技術(shù)規(guī)范
- 2025-2030阿爾法地中海貧血治療行業(yè)市場現(xiàn)狀供需分析及重點(diǎn)企業(yè)投資評估規(guī)劃分析研究報告
評論
0/150
提交評論