版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
期末c語言考試題第一部分單選題(50題)1、以下函數(shù)參數(shù)傳遞方式中,能修改實(shí)參值的是?()
A.值傳遞
B.地址傳遞
C.都能
D.都不能
【答案】:答案解析:值傳遞修改的是形參(副本),不影響實(shí)參;地址傳遞通過指針修改實(shí)參值,故選B。2、若inta[5]={1,2,3,4,5};則*(a+4)的值是?()
A.4
B.5
C.1
D.2
【答案】:答案解析:a+4是第五個元素地址,*(a+4)=a[4]=5,故選B。3、以下關(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。4、以下指針與函數(shù)的關(guān)系正確的是?()
A.函數(shù)名是函數(shù)的地址
B.函數(shù)指針可指向函數(shù)
C.可通過函數(shù)指針調(diào)用函數(shù)
D.以上都正確
【答案】:答案解析:A、B、C均是函數(shù)與指針的基本關(guān)系,故選D。5、以下哪個是C語言中的賦值運(yùn)算符?()
A.==
B.=
C.+=
D.!=
【答案】:答案解析:=是賦值運(yùn)算符,==是等于判斷,+=是復(fù)合賦值,!=是不等于判斷,故選B。6、執(zhí)行scanf("%d,%d",&a,&b);時,正確的輸入格式是?()
A.23
B.2;3
C.2,3
D.2和3
【答案】:答案解析:scanf格式串中含逗號分隔符,輸入需嚴(yán)格對應(yīng),故選C。7、若inti=1;執(zhí)行do{printf("%d",i);i++;}while(i<=0);輸出結(jié)果是?()
A.1
B.無輸出
C.無限循環(huán)
D.12
【答案】:答案解析:do-while先執(zhí)行一次(輸出1,i=2),再判斷i<=0為假,循環(huán)結(jié)束,故選A。8、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。9、若int*p=(int)malloc(sizeof(int));則p的值是?()
A.0
B.隨機(jī)值
C.1
D.無定義
【答案】:答案解析:malloc分配的內(nèi)存未初始化,值為隨機(jī)值,故選B。10、若intx=3,y=5;則表達(dá)式x>y?x:y的結(jié)果是?()
A.3
B.5
C.true
D.false
【答案】:答案解析:三元運(yùn)算符格式“條件?值1:值2”,x>y為假,取y=5,故選B。11、以下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。12、函數(shù)調(diào)用的一般格式是?()
A.函數(shù)名(實(shí)參列表);
B.函數(shù)名實(shí)參列表;
C.返回類型函數(shù)名(實(shí)參列表);
D.函數(shù)名=實(shí)參列表;
【答案】:答案解析:函數(shù)調(diào)用格式為“函數(shù)名(實(shí)參列表);”,實(shí)參與形參匹配,故選A。13、以下關(guān)于指針的說法錯誤的是?()
A.指針可指向變量、數(shù)組、函數(shù)
B.指針可進(jìn)行算術(shù)運(yùn)算(如++、--)
C.指針可指向自身
D.指針可用于動態(tài)內(nèi)存分配
【答案】:答案解析:指針不能指向自身(類型不匹配),A、B、D說法正確,故選C。14、函數(shù)定義和函數(shù)聲明的區(qū)別是?()
A.定義包含函數(shù)體,聲明不包含
B.聲明包含函數(shù)體,定義不包含
C.定義和聲明無區(qū)別
D.定義在程序開頭,聲明在結(jié)尾
【答案】:答案解析:函數(shù)定義是完整實(shí)現(xiàn)(含函數(shù)體),聲明是告訴編譯器函數(shù)名、參數(shù)、返回類型(不含函數(shù)體),故選A。15、以下關(guān)于void類型函數(shù)的說法正確的是?()
A.不能有return語句
B.可以有return語句(無表達(dá)式)
C.必須有return語句
D.可返回任意類型
【答案】:答案解析:void函數(shù)可寫return;(無表達(dá)式),用于提前結(jié)束函數(shù),不能返回表達(dá)式,故選B。16、若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。17、以下哪個for循環(huán)是無限循環(huán)?()
A.for(i=0;i<5;i++)
B.for(;;)
C.for(i=0;i<5;i--);
D.for(i=5;i>0;i--)
【答案】:答案解析:for循環(huán)三個表達(dá)式均省略時,條件恒為真,是無限循環(huán),A執(zhí)行5次,C、D初始條件不滿足(執(zhí)行0次),故選B。18、若charstr[10]="abcde";則str[5]的值是?()
A.'e'
B.'\0'
C.隨機(jī)值
D.無定義
【答案】:答案解析:字符串自動在末尾加\0,str[5]是\0,故選B。19、數(shù)組名的本質(zhì)是?()
A.數(shù)組第一個元素的地址
B.數(shù)組最后一個元素的地址
C.數(shù)組元素的個數(shù)
D.數(shù)組的大小
【答案】:答案解析:數(shù)組名是首元素地址(常量,不可修改),故選A。20、以下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。21、以下關(guān)于函數(shù)參數(shù)的說法正確的是?()
A.形參是局部變量
B.實(shí)參是局部變量
C.形參在函數(shù)調(diào)用后釋放
D.實(shí)參在函數(shù)調(diào)用后釋放
【答案】:答案解析:形參是函數(shù)內(nèi)局部變量(調(diào)用時分配內(nèi)存,調(diào)用結(jié)束釋放),實(shí)參是主調(diào)函數(shù)中的變量(生命周期與主調(diào)函數(shù)一致),故選A。22、若inta=10,*p=&a,q=p;則q的值是?()
A.10
B.&a
C.p
D.無定義
【答案】:答案解析:q=p使q指向a,*q=10,故選A。23、表示“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ù)比較語法錯誤,&是按位與,故選C。24、若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。25、若inta[5]={1,2,3};則a[3]的值是?()
A.0
B.3
C.隨機(jī)值
D.無定義
【答案】:答案解析:初始化時未賦值的元素默認(rèn)為0,a[3]=0,故選A。26、以下函數(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。27、以下定義指向數(shù)組的指針正確的是?()
A.inta[5],*p=a;
B.inta[5],*p=&a;
C.inta[5],p=a;
D.inta[5],*p=a[0];
【答案】:答案解析:a是數(shù)組名(首元素地址),p=a等價于p=&a[0],B&a是數(shù)組地址(類型不匹配),Cp是普通變量,Dp不能賦a[0]的值,故選A。28、若charstr[]="helloworld";則字符串長度是?()
A.10
B.11
C.12
D.13
【答案】:答案解析:"helloworld"含11個字符(不含\0),長度為11,故選B。29、若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。30、函數(shù)的形參在______時分配內(nèi)存?()
A.函數(shù)定義
B.函數(shù)聲明
C.函數(shù)調(diào)用
D.程序編譯
【答案】:答案解析:形參是局部變量,函數(shù)調(diào)用時分配內(nèi)存,調(diào)用結(jié)束釋放,故選C。31、預(yù)處理命令#definePI3.14159的作用是?()
A.定義變量
B.定義常量
C.函數(shù)聲明
D.包含頭文件
【答案】:答案解析:#define是宏定義,用于定義常量(無分號,直接替換),故選B。32、以下哪個表達(dá)式可訪問數(shù)組a的第i個元素(i從1開始)?()
A.a[i]
B.a[i-1]
C.*(a+i)
D.*(a+i-1)
【答案】:答案解析:數(shù)組下標(biāo)從0開始,第i個元素對應(yīng)下標(biāo)i-1,a[i-1]正確,C、D是指針訪問(對應(yīng)下標(biāo)i),故選B。33、若inta[4]={1,2,3,4};則*(a+1)的值是?()
A.1
B.2
C.3
D.4
【答案】:答案解析:a是首地址,a+1是第二個元素地址,*(a+1)=a[1]=2,故選B。34、以下字符串常量定義正確的是?()
A.charstr[]="C";
B.charstr[1]='C';
C.charstr[]={'C'};
D.charstr[2]={'C','\0'};
【答案】:答案解析:A用雙引號定義字符串(自動加\0),B單引號用于字符常量,C無\0,D長度2正確但A更簡潔,故選A。35、以下數(shù)組定義錯誤的是?()
A.inta[0];
B.inta[5];
C.inta[]={1,2,3};
D.inta[5]={1,2,3};
【答案】:答案解析:數(shù)組長度不能為0,編譯報錯,其余正確,故選A。36、若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。37、以下if語句的語法正確的是?()
A.if(x>0){printf("a");elseprintf("b");}
B.if(x>0)printf("a");else{printf("b");}
C.if(x>0)printf("a");elseprintf("b");}
D.if(x>0){printf("a");}elseprintf("b");}
【答案】:答案解析:A缺少},C多},D多},B語法正確(else后{}可加可不加),故選B。38、continue語句在循環(huán)中的作用是?()
A.終止整個循環(huán)
B.跳過本次循環(huán)剩余部分,繼續(xù)下一次
C.暫停循環(huán)
D.無作用
【答案】:答案解析:continue跳過本次循環(huán)剩余代碼,直接進(jìn)入下一次循環(huán)條件判斷,故選B。39、指針作為函數(shù)返回值時,不能返回?()
A.靜態(tài)局部變量的地址
B.全局變量的地址
C.動態(tài)分配內(nèi)存的地址
D.局部變量的地址
【答案】:答案解析:局部變量在函數(shù)調(diào)用結(jié)束后釋放,返回其地址會導(dǎo)致野指針,故選D。40、C語言程序的入口函數(shù)是?()
A.main()
B.printf()
C.scanf()
D.main
【答案】:答案解析:所有C程序從main()函數(shù)開始執(zhí)行,必須有且僅有一個,故選A。41、以下函數(shù)調(diào)用時,實(shí)參為常量的是?()
A.fun(5);
B.fun(a);
C.fun(&a);
D.fun("abc");
【答案】:答案解析:A中5是常量,B是變量,C是變量地址,D是字符串常量,題目問“常量”,A正確,故選A。42、以下指針運(yùn)算正確的是?()
A.inta=10,*p=&a;p++;
B.inta=10,*p=&a;p=a;
C.inta=10,*p=&a;p=&5;
D.inta=10,*p=&a;*p=&a;
【答案】:答案解析:A指針p自增(指向a的下一個地址),B不能將int值賦給指針,C不能取常量地址,D不能將地址賦給int變量,故選A。43、若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。44、以下關(guān)于main函數(shù)的說法正確的是?()
A.main函數(shù)可無返回值
B.main函數(shù)可帶參數(shù)
C.main函數(shù)是程序入口
D.以上都正確
【答案】:答案解析:main函數(shù)可聲明為void(無返回值),可帶argc/argv參數(shù),是程序唯一入口,故選D。45、函數(shù)中局部變量的作用域是?()
A.整個程序
B.函數(shù)內(nèi)部
C.函數(shù)外部
D.所有函數(shù)
【答案】:答案解析:局部變量定義在函數(shù)內(nèi),僅在函數(shù)內(nè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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 產(chǎn)品包裝設(shè)計與生產(chǎn)標(biāo)準(zhǔn)模板
- 稀有文化遺址保護(hù)開發(fā)承諾書(6篇)
- 業(yè)務(wù)流程分析與優(yōu)化工具
- 護(hù)坡磚-施工方案(3篇)
- 政府交通活動策劃方案(3篇)
- 施工方案審查格式(3篇)
- 無溶劑施工方案(3篇)
- 木樁打樁施工方案(3篇)
- 河流地面施工方案(3篇)
- 流浪倉施工方案(3篇)
- 路虎攬勝購買合同
- 2025年文化旅游活動效果評估計劃可行性研究報告
- 塑木地板銷售合同范本
- 《青島市中小學(xué)心理危機(jī)干預(yù) 指導(dǎo)手冊》
- 三北工程林草濕荒一體化保護(hù)修復(fù)(2025年度退化草原修復(fù))監(jiān)理方案投標(biāo)文件(技術(shù)方案)
- 2024江蘇省常熟市中考物理試卷【歷年真題】附答案詳解
- 瞼板腺按摩護(hù)理技術(shù)
- 2025年企業(yè)法律合規(guī)性風(fēng)險評估與治理方案
- DBJT15-162-2019 建筑基坑施工監(jiān)測技術(shù)標(biāo)準(zhǔn)
- 廣東省東莞市2024-2025學(xué)年八年級下學(xué)期7月期末考試英語試卷(含答案)
- 全科住院醫(yī)師規(guī)范化培訓(xùn)結(jié)業(yè)臨床實(shí)踐能力考核標(biāo)準(zhǔn)方案(2022版)
評論
0/150
提交評論