版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
c語言競賽測試題第一部分單選題(50題)1、若inta=10,b=20,*p=&a,q=&b;執(zhí)行p=q;后p的值是?()
A.10
B.20
C.&a
D.&b
【答案】:答案解析:p=q使p指向b,*p=b=20,故選B。2、若inta=4,b=6;則表達(dá)式a<b?a+b:a-b的結(jié)果是?()
A.10
B.-2
C.4
D.6
【答案】:答案解析:a<b為真,取a+b=4+6=10,故選A。3、若intx=1;執(zhí)行switch(x){case1:printf("1");case2:printf("2");break;case3:printf("3");}輸出結(jié)果是?()
A.1
B.12
C.123
D.無輸出
【答案】:答案解析:x=1匹配case1,無break,穿透到case2(執(zhí)行后break),輸出12,故選B。4、若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。5、若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。6、以下指針定義正確的是?()
A.int*p;
B.char*q;
C.float*r;
D.以上都正確
【答案】:答案解析:A指向int,B指向char,C指向float,均符合指針定義語法,故選D。7、以下switch語句中,default的作用是?()
A.匹配所有case
B.匹配除case外的所有情況
C.終止switch語句
D.無實(shí)際作用
【答案】:答案解析:default用于匹配所有case未覆蓋的情況,可選且位置靈活,故選B。8、若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。9、以下定義指向二維數(shù)組的指針正確的是?()
A.inta[2][3],(*p)[3]=a;
B.inta[2][3],*p=a;
C.inta[2][3],p=a[0];
D.inta[2][3],*p=&a;
【答案】:答案解析:A是指向3列數(shù)組的指針(匹配二維數(shù)組a的行),B、C、D類型不匹配,故選A。10、邏輯表達(dá)式!5的結(jié)果是?()
A.0
B.1
C.5
D.真
【答案】:答案解析:5為真,!是邏輯非,真變假(0),故選A。11、若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時break,輸出012,故選A。12、若inti=1;執(zhí)行while(i<=3){printf("%d",i);i++;}輸出結(jié)果是?()
A.123
B.1234
C.012
D.無輸出
【答案】:答案解析:i初始1,滿足i<=3,執(zhí)行3次,輸出123,i最終4,循環(huán)結(jié)束,故選A。13、shortint類型的有符號取值范圍是?()
A.0~65535
B.-32768~32767
C.-2147483648~2147483647
D.無固定范圍
【答案】:答案解析:16位shortint有符號取值標(biāo)準(zhǔn)為-32768~32767,無符號為0~65535,故選B。14、若inta[5]={1,2,3,4,5};則a[5]是?()
A.5
B.0
C.越界訪問
D.無定義
【答案】:答案解析:a[5]下標(biāo)超出0-4范圍,屬于越界訪問(可能導(dǎo)致程序錯誤),故選C。15、while循環(huán)的語法格式正確的是?()
A.while(條件)語句;
B.while條件語句;
C.while(條件);語句;
D.while(條件){語句}
【答案】:答案解析:while后條件需加括號,語句可是單條(加分號)或代碼塊(用{}),D缺少分號,故選A。16、以下函數(shù)定義中,參數(shù)為兩個int類型的是?()
A.voidfun(inta,floatb){}
B.voidfun(inta,intb){}
C.voidfun(floata,intb){}
D.voidfun(inta,charb){}
【答案】:答案解析:B中兩個參數(shù)均為int類型,其余選項(xiàng)參數(shù)類型不匹配,故選B。17、C語言中基本數(shù)據(jù)類型不包括以下哪項(xiàng)?()
A.char
B.int
C.float
D.array
【答案】:答案解析:基本數(shù)據(jù)類型為char、int、float、double,array是數(shù)組(構(gòu)造類型),故選D。18、以下函數(shù)返回值類型為int的是?()
A.voidfun(){return;}
B.intfun(){return3.14;}
C.floatfun(){return5;}
D.charfun(){return'a';}
【答案】:答案解析:A返回值類型void(不能return表達(dá)式),B返回類型int(3.14強(qiáng)制轉(zhuǎn)為3),C返回類型float,D返回類型char,故選B。19、函數(shù)聲明的作用是?()
A.告訴編譯器函數(shù)的存在
B.實(shí)現(xiàn)函數(shù)功能
C.分配函數(shù)內(nèi)存
D.調(diào)用函數(shù)
【答案】:答案解析:函數(shù)聲明用于向編譯器說明函數(shù)名、參數(shù)、返回類型(確保調(diào)用正確),定義才是實(shí)現(xiàn)功能,故選A。20、若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。21、若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。22、若intx=9;執(zhí)行以下代碼后輸出結(jié)果是?()if(x>10)printf("A");elseif(x>8)printf("B");elseif(x>6)printf("C");elseprintf("D");
A.A
B.B
C.C
D.
【答案】:答案解析:x=9>8,執(zhí)行第二個分支,輸出B,故選B。23、以下哪個操作會導(dǎo)致野指針?()
A.指針未初始化
B.指針指向的內(nèi)存被釋放后未置空
C.指針越界訪問
D.以上都是
【答案】:答案解析:野指針是指向無效地址的指針,A、B、C均會導(dǎo)致野指針,故選D。24、若inta=10,p=&a;則p的值是?()
A.10
B.&a
C.p
D.無定義
【答案】:答案解析:*p是解引用,->用于結(jié)構(gòu)體指針訪問成員,.用于結(jié)構(gòu)體變量訪問成員,故選B。25、函數(shù)參數(shù)傳遞中,值傳遞的特點(diǎn)是?()
A.形參修改影響實(shí)參
B.形參是實(shí)參的副本
C.傳遞的是變量地址
D.用于數(shù)組傳參
【答案】:答案解析:值傳遞時形參是實(shí)參的拷貝,修改形參不影響實(shí)參,地址傳遞才影響實(shí)參,故選B。26、遞歸函數(shù)的終止條件是?()
A.函數(shù)調(diào)用自身
B.函數(shù)返回值為0
C.不再調(diào)用自身的條件
D.無終止條件
【答案】:答案解析:遞歸函數(shù)必須有終止條件(否則無限遞歸棧溢出),終止條件是不再調(diào)用自身的判斷,故選C。27、二維數(shù)組a[3][4]的元素個數(shù)是?()
A.7
B.12
C.3
D.4
【答案】:答案解析:3行4列,共3×4=12個元素,故選B。28、以下哪個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。29、若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。30、以下if語句中,邏輯運(yùn)算符使用正確的是?()
A.if(x>3&&x<7)
B.if(x>3&x<7)
C.if(x>3|||x<7)
D.if(x>3||x<7)
【答案】:答案解析:邏輯與用&&,邏輯或用||,B是按位與,C多寫||,D邏輯錯誤(x>3或x<7恒為真),故選A。31、以下函數(shù)聲明中,返回類型為float的是?()
A.floatfun();
B.voidfun(floata);
C.intfun(floata);
D.charfun(floata);
【答案】:答案解析:A返回類型為float,B無返回值,C返回類型int,D返回類型char,故選A。32、邏輯表達(dá)式!0的結(jié)果是?()
A.0
B.1
C.真
D.假
【答案】:答案解析:C語言中非0為真,!是邏輯非,!0(假)結(jié)果為1(真),故選B。33、以下關(guān)于數(shù)組的說法錯誤的是?()
A.數(shù)組元素必須是同一類型
B.數(shù)組長度必須是常量
C.數(shù)組可在函數(shù)內(nèi)定義
D.數(shù)組可整體賦值
【答案】:答案解析:數(shù)組不能用“=”整體賦值,需逐個元素或循環(huán)賦值,A、B、C正確,故選D。34、putchar()函數(shù)的功能是?()
A.讀取一個字符
B.輸出一個字符
C.讀取字符串
D.輸出字符串
【答案】:答案解析:putchar()用于輸出單個字符,getchar()讀取單個字符,puts()輸出字符串,故選B。35、以下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。36、以下定義函數(shù)指針正確的是?()
A.int(*fp)(int);
B.int*fp(int);
C.intfp(int);
D.int(fp)[];
【答案】:答案解析:A是指向int返回值、int參數(shù)的函數(shù)指針,B是返回int的函數(shù),C是普通函數(shù),D是指向數(shù)組的指針,故選A。37、若inta[5]={1,2,3};則a[3]的值是?()
A.0
B.3
C.隨機(jī)值
D.無定義
【答案】:答案解析:初始化時未賦值的元素默認(rèn)為0,a[3]=0,故選A。38、以下哪個數(shù)據(jù)類型用于存儲單個字符?()
A.int
B.char
C.float
D.double
【答案】:答案解析:char用于存儲單個字符(ASCII碼),int存儲整數(shù),float/double存儲浮點(diǎn)數(shù),故選B。39、以下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。40、以下二維數(shù)組定義正確的是?()
A.inta[2][3];
B.inta[2][];
C.inta[][3]={1,2,3,4,5,6};
D.inta[2][3]={1,2,3,4,5,6,7};
【答案】:答案解析:B第二維不能省略,C第一維可省略(自動計(jì)算為2),D初始化元素超6個(2×3=6),A標(biāo)準(zhǔn)定義正確,故選A。41、以下關(guān)于數(shù)組的說法正確的是?()
A.數(shù)組下標(biāo)從1開始
B.數(shù)組名可作為左值賦值
C.數(shù)組長度定義后不可修改
D.數(shù)組元素類型可不同
【答案】:答案解析:數(shù)組下標(biāo)從0開始,數(shù)組名是常量(不可賦值),元素類型必須相同,長度定義后固定,故選C。42、以下switch語句語法錯誤的是?()
A.switch(x){case1:printf("1");break;}
B.switch(x){case'a':printf("a");break;}
C.switch(x){case1.5:printf("1.5");break;}
D.switch(x){default:printf("0");}
【答案】:答案解析:case后必須是整型常量,1.5是浮點(diǎn)型,語法錯誤,故選C。43、若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。44、若intx=2;執(zhí)行switch(x){case1:printf("a");case2:printf("b");case3:printf("c");}輸出結(jié)果是?()
A.b
B.bc
C.abc
D.無輸出
【答案】:答案解析:x=2匹配case2,無break,穿透到case3,輸出bc,故選B。45、若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。46、以下關(guān)于二維數(shù)組的說法正確的是?()
A.二維數(shù)組是數(shù)組
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 福建省泉州市泉港區(qū)2025-2026學(xué)年上學(xué)期期末八年級數(shù)學(xué)試卷(含答案)
- 飛騰培訓(xùn)課件
- 鋼結(jié)構(gòu)環(huán)保施工技術(shù)要點(diǎn)
- 2026河北雄安人才服務(wù)有限公司商業(yè)招商崗招聘1人考試備考試題及答案解析
- 2026廣東廣州市黃埔區(qū)大沙街道招聘編外聘用人員1人參考考試題庫及答案解析
- 2026山東事業(yè)單位統(tǒng)考煙臺萊州市招聘63人備考考試試題及答案解析
- 2026年甘肅白銀市平川區(qū)容通水務(wù)有限公司招聘參考考試題庫及答案解析
- 2026年上半年黑龍江省農(nóng)業(yè)農(nóng)村廳事業(yè)單位公開招聘工作人員19人考試備考試題及答案解析
- 法律事務(wù)辦管理制度(3篇)
- 工資薪酬管理制度是什么(3篇)
- 預(yù)中標(biāo)協(xié)議書電子版
- 龜?shù)慕馄收n件
- 蒙牛乳業(yè)股份有限公司盈利能力分析
- 2025年碳排放管理師考試試題及答案
- 八年級英語教學(xué)設(shè)計(jì)案例分析Unit3
- 2025年高爾基《童年》閱讀測試+答案
- 95-1輕機(jī)槍射擊課件
- 跟單轉(zhuǎn)正述職報(bào)告
- GB/T 46425-2025煤矸石山生態(tài)修復(fù)技術(shù)規(guī)范
- 2024-2025學(xué)年度黃河水利職業(yè)技術(shù)學(xué)院單招《職業(yè)適應(yīng)性測試》考前沖刺試卷附答案詳解【綜合卷】
- 中資企業(yè)在泰國發(fā)展報(bào)告(2024-2025)-境外商會聯(lián)席會議-202509
評論
0/150
提交評論