版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
期末c語言考試題第一部分單選題(50題)1、函數(shù)定義和函數(shù)聲明的區(qū)別是?()
A.定義包含函數(shù)體,聲明不包含
B.聲明包含函數(shù)體,定義不包含
C.定義和聲明無區(qū)別
D.定義在程序開頭,聲明在結(jié)尾
【答案】:答案解析:函數(shù)定義是完整實(shí)現(xiàn)(含函數(shù)體),聲明是告訴編譯器函數(shù)名、參數(shù)、返回類型(不含函數(shù)體),故選A。2、以下函數(shù)聲明錯(cuò)誤的是?()
A.voidfun(int);
B.voidfun(inta);
C.voidfun(inta,intb);
D.voidfun(inta;intb);
【答案】:答案解析:函數(shù)聲明中參數(shù)用逗號分隔,不能用分號,D語法錯(cuò)誤,故選D。3、函數(shù)調(diào)用時(shí),實(shí)參的類型必須與形參的類型?()
A.完全一致
B.兼容(可自動轉(zhuǎn)換)
C.無關(guān)
D.實(shí)參類型大于形參類型
【答案】:答案解析:實(shí)參和形參類型可兼容(如int→float),編譯器自動轉(zhuǎn)換,不兼容則編譯錯(cuò)誤,故選B。4、以下函數(shù)調(diào)用時(shí),實(shí)參為常量的是?()
A.fun(5);
B.fun(a);
C.fun(&a);
D.fun("abc");
【答案】:答案解析:A中5是常量,B是變量,C是變量地址,D是字符串常量,題目問“常量”,A正確,故選A。5、若inta=2;執(zhí)行a*=a+3;后a的值是?()
A.7
B.10
C.14
D.5
【答案】:答案解析:a*=a+3等價(jià)于a=a*(a+3)=2*(2+3)=10,故選B。6、指針作為函數(shù)返回值時(shí),不能返回?()
A.靜態(tài)局部變量的地址
B.全局變量的地址
C.動態(tài)分配內(nèi)存的地址
D.局部變量的地址
【答案】:答案解析:局部變量在函數(shù)調(diào)用結(jié)束后釋放,返回其地址會導(dǎo)致野指針,故選D。7、以下switch語句中,default的位置可以在?()
A.所有case之前
B.所有case之后
C.兩個(gè)case之間
D.以上都可以
【答案】:答案解析:default位置靈活,可在case前、后或中間,不影響執(zhí)行邏輯,故選D。8、以下關(guān)于指針數(shù)組的定義正確的是?()
A.int*arr[5];
B.int(*arr)[5];
C.intarr[5];
D.intarr[];
【答案】:答案解析:A是指針數(shù)組(5個(gè)int指針),B是指向數(shù)組的指針,C是普通數(shù)組,D缺少長度,故選A。9、若inti=0;執(zhí)行while(1){printf("%d",i);i++;if(i==3)break;}輸出結(jié)果是?()
A.012
B.0123
C.無限循環(huán)
D.無輸出
【答案】:答案解析:while(1)無限循環(huán),i=3時(shí)break,輸出012,故選A。10、指針變量的作用是存儲?()
A.變量的值
B.變量的地址
C.函數(shù)的地址
D.數(shù)組的元素
【答案】:答案解析:指針變量專門存儲其他變量的內(nèi)存地址,故選B。11、若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。12、以下數(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。13、以下哪個(gè)是C語言中的賦值運(yùn)算符?()
A.==
B.=
C.+=
D.!=
【答案】:答案解析:=是賦值運(yùn)算符,==是等于判斷,+=是復(fù)合賦值,!=是不等于判斷,故選B。14、若inta=7,b=3;執(zhí)行if(a%b==1)a=0;elseb=0;后a和b的值分別是?()
A.0,3
B.7,0
C.0,0
D.7,3
【答案】:答案解析:7%3=1,條件為真,a=0,b保持3,故選A。15、以下關(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。16、以下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。17、表示“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ù)比較語法錯(cuò)誤,&是按位與,故選C。18、若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。19、while循環(huán)的語法格式正確的是?()
A.while(條件)語句;
B.while條件語句;
C.while(條件);語句;
D.while(條件){語句}
【答案】:答案解析:while后條件需加括號,語句可是單條(加分號)或代碼塊(用{}),D缺少分號,故選A。20、數(shù)組在內(nèi)存中的存儲方式是?()
A.隨機(jī)存儲
B.連續(xù)存儲
C.鏈?zhǔn)酱鎯?/p>
D.散列存儲
【答案】:答案解析:數(shù)組元素在內(nèi)存中連續(xù)存放,便于通過下標(biāo)訪問,故選B。21、以下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。22、數(shù)組名作為函數(shù)參數(shù)時(shí),函數(shù)形參的正確寫法是?()
A.inta[]
B.int*a
C.inta[5]
D.以上都是
【答案】:答案解析:數(shù)組形參可寫為inta[]、int*a(指針)、inta[5](長度可忽略),本質(zhì)均為指針,故選D。23、指針的自增運(yùn)算(p++)的含義是?()
A.指針值加1
B.指針指向的變量值加1
C.指針指向地址偏移一個(gè)類型大小
D.指針指向地址偏移1字節(jié)
【答案】:答案解析:p++使指針指向地址偏移“指向類型大小”(如int指針+4字節(jié)),故選C。24、轉(zhuǎn)義字符\0的作用是?()
A.表示空格
B.表示制表符
C.字符串結(jié)束標(biāo)志
D.換行
【答案】:答案解析:\0ASCII碼為0,是字符串默認(rèn)結(jié)束標(biāo)志,不計(jì)入長度,故選C。25、若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。26、以下關(guān)于數(shù)組越界的說法正確的是?()
A.編譯時(shí)會報(bào)錯(cuò)
B.運(yùn)行時(shí)一定會崩潰
C.可能導(dǎo)致程序錯(cuò)誤
D.無影響
【答案】:答案解析:數(shù)組越界屬于未定義行為,編譯時(shí)不報(bào)錯(cuò),運(yùn)行時(shí)可能正?;虮罎?,故選C。27、continue語句只能用于以下哪種結(jié)構(gòu)?()
A.循環(huán)語句
B.switch語句
C.if語句
D.所有結(jié)構(gòu)
【答案】:答案解析:continue僅用于循環(huán)語句(for/while/do-while),用于跳過本次循環(huán),故選A。28、以下定義指向字符串的指針正確的是?()
A.char*str="hello";
B.charstr[]="hello";
C.char(*str)[]="hello";
D.charstr[5]="hello";
【答案】:答案解析:A是指向字符串常量的指針,B是字符數(shù)組,C是數(shù)組指針(類型不匹配),D長度不足(含\0需6字節(jié)),故選A。29、定義單精度浮點(diǎn)型變量y并賦值2.718的語句是?()
A.doubley=2.718;
B.floaty=2.718f;
C.floaty=2.718;
D.inty=2.718;
【答案】:答案解析:float是單精度,需加f后綴(否則默認(rèn)double),double是雙精度,故選B。30、指針與數(shù)組的關(guān)系,以下說法正確的是?()
A.數(shù)組名是常量指針,不能自增
B.指針可指向數(shù)組元素,通過指針遍歷數(shù)組
C.p[i]等價(jià)于*(p+i)
D.以上都正確
【答案】:答案解析:數(shù)組名是首元素地址(常量,不可自增),指針可遍歷數(shù)組,p[i]與*(p+i)等價(jià),故選D。31、函數(shù)參數(shù)為數(shù)組時(shí),形參的寫法錯(cuò)誤的是?()
A.inta[]
B.int*a
C.inta[5]
D.inta
【答案】:答案解析:D中inta是普通變量,不能接收數(shù)組名(地址),A、B、C均正確,故選D。32、若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。33、若inta[5]={10,20,30,40,50};則a[4]的值是?()
A.40
B.50
C.60
D.無定義
【答案】:答案解析:a[4]是第五個(gè)元素,值為50,故選B。34、以下二維數(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。35、若inta[5]={10,20,30,40,50};則a[2]的值是?()
A.10
B.20
C.30
D.40
【答案】:答案解析:數(shù)組下標(biāo)從0開始,a[2]是第三個(gè)元素30,故選C。36、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。37、若intx=6;執(zhí)行以下代碼后輸出結(jié)果是?()if(x<5){printf("A");}elseif(x<8){printf("B");}else{printf("C");}
A.A
B.B
C.C
D.無輸出
【答案】:答案解析:x=6<8,執(zhí)行第二個(gè)分支,輸出B,故選B。38、以下關(guān)于動態(tài)內(nèi)存分配的說法正確的是?()
A.malloc函數(shù)用于動態(tài)分配內(nèi)存,返回void*
B.free函數(shù)用于釋放動態(tài)分配的內(nèi)存
C.動態(tài)分配的內(nèi)存需手動釋放,避免內(nèi)存泄漏
D.以上都正確
【答案】:答案解析:A、B、C均是動態(tài)內(nèi)存分配的核心規(guī)則,故選D。39、若inta=6;執(zhí)行a/=3;后a的值是?()
A.2
B.3
C.6
D.18
【答案】:答案解析:a/=3等價(jià)于a=a/3=6/3=2,故選A。40、若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。41、邏輯表達(dá)式!0的結(jié)果是?()
A.0
B.1
C.真
D.假
【答案】:答案解析:C語言中非0為真,!是邏輯非,!0(假)結(jié)果為1(真),故選B。42、以下函數(shù)定義正確的是?()
A.voidfun(){printf("hello");}
B.voidfun(inta){printf("%d",a);}
C.intfun(){return5;}
D.以上都正確
【答案】:答案解析:A無參無返回值,B有參無返回值,C無參有返回值,均符合語法,故選D。43、若inta[4]={10,20,30,40};則*(a+2)的值是?()
A.20
B.30
C.40
D.10
【答案】:答案解析:a+2是第三個(gè)元素地址,*(a+2)=a[2]=30,故選B。44、若intx=10,y=20;則表達(dá)式x!=y的結(jié)果是?()
A.0
B.1
C.10
D.20
【答案】:答案解析:!=是不等于判斷,x!=y為真,C語言中真用1表示,故選B。45、以下循環(huán)語句中,語法正確的是?()
A.while(i<5){printf("%d",i);i++;}
B.while(i<5)printf("%d",i);i++;
C.do{printf("%d",i);i++;}while(i<5)
D.for(i=0;i<5)printf("%d",i);
【答案】:答案解析:B中i++在循環(huán)體外(循環(huán)無限),C缺少分號,D缺少更新表達(dá)式,A語法正確,故選A。46、以下switch語句中,case后的常量可以是?()
A.整數(shù)
B.字符
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年高職(美容導(dǎo)師)培訓(xùn)指導(dǎo)考核試題及答案
- 2025年中職數(shù)字媒體技術(shù)(多媒體制作)試題及答案
- (正式版)DB15∕T 9001-2025 《黃河流域非物質(zhì)文化遺產(chǎn)保護(hù)數(shù)字化建設(shè)規(guī)范》
- 神舟科技介紹
- AI創(chuàng)業(yè)公司崛起
- 2026年新興市場的投資潛力與風(fēng)險(xiǎn)評估
- 支持人工智能:支持AI擁抱智能新時(shí)代
- 云南省部分學(xué)校2025-2026學(xué)年七年級上學(xué)期期末歷史試題(含答案)
- 2025四川廣元市人民檢察院招聘警務(wù)輔助人員5人備考題庫參考答案詳解
- 2024屆河南省濮陽市范縣高三下學(xué)期模擬測試(一)歷史試題(含答案)
- 2025年手術(shù)室護(hù)理實(shí)踐指南知識考核試題及答案
- 外貿(mào)公司采購專員績效考核表
- 彩禮分期合同范本
- 胸腺瘤伴重癥肌無力課件
- 十五五安全生產(chǎn)規(guī)劃思路
- 一年級地方課程教案
- 剪刀車專項(xiàng)施工方案
- 授信合同與借款合同(標(biāo)準(zhǔn)版)
- 2024-2025學(xué)年四川省綿陽市七年級(上)期末數(shù)學(xué)試卷
- 道路清掃保潔、垃圾收運(yùn)及綠化服務(wù)方案投標(biāo)文件(技術(shù)標(biāo))
- 合成藥物催化技術(shù)
評論
0/150
提交評論