期末c語(yǔ)言試題(各地真題)_第1頁(yè)
期末c語(yǔ)言試題(各地真題)_第2頁(yè)
期末c語(yǔ)言試題(各地真題)_第3頁(yè)
期末c語(yǔ)言試題(各地真題)_第4頁(yè)
期末c語(yǔ)言試題(各地真題)_第5頁(yè)
已閱讀5頁(yè),還剩8頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

期末c語(yǔ)言試題第一部分單選題(50題)1、以下二維數(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。2、若charc='A';執(zhí)行c=c+32后,c的值是?()

A.'a'

B.'B'

C.65

D.97

【答案】:答案解析:大寫(xiě)字母ASCII碼比對(duì)應(yīng)小寫(xiě)字母小32,'A'(65)+32='a'(97),故選A。3、以下if-else語(yǔ)句中,代碼塊執(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。4、以下指針的算術(shù)運(yùn)算中,單位是?()

A.1字節(jié)

B.指針指向類型的大小

C.4字節(jié)

D.8字節(jié)

【答案】:答案解析:指針?biāo)阈g(shù)運(yùn)算(如p++)偏移量是指向類型的大?。ㄈ鏸nt指針+1偏移4字節(jié)),故選B。5、以下函數(shù)定義中,參數(shù)為兩個(gè)int類型的是?()

A.voidfun(inta,floatb){}

B.voidfun(inta,intb){}

C.voidfun(floata,intb){}

D.voidfun(inta,charb){}

【答案】:答案解析:B中兩個(gè)參數(shù)均為int類型,其余選項(xiàng)參數(shù)類型不匹配,故選B。6、若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。7、若inta=5,*p=&a;則&*p的值是?()

A.5

B.&a

C.p

D.無(wú)定義

【答案】:答案解析:&*p等價(jià)于p,即&a(a的地址),故選B。8、若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。9、若inta[5]={10,20,30,40,50};則a[2]的值是?()

A.10

B.20

C.30

D.40

【答案】:答案解析:數(shù)組下標(biāo)從0開(kāi)始,a[2]是第三個(gè)元素30,故選C。10、若inti=0;執(zhí)行while(i<5){if(i==2)break;printf("%d",i);i++;}輸出結(jié)果是?()

A.01

B.012

C.01234

D.無(wú)限循環(huán)

【答案】:答案解析:i=2時(shí)執(zhí)行break,終止循環(huán),輸出01,故選A。11、函數(shù)定義在main函數(shù)之后時(shí),必須先?()

A.調(diào)用函數(shù)

B.聲明函數(shù)

C.定義函數(shù)

D.無(wú)要求

【答案】:答案解析:main函數(shù)調(diào)用其他函數(shù)時(shí),若函數(shù)定義在main之后,需先聲明(否則編譯器找不到函數(shù)),故選B。12、以下哪個(gè)操作會(huì)導(dǎo)致野指針?()

A.指針未初始化

B.指針指向的內(nèi)存被釋放后未置空

C.指針越界訪問(wèn)

D.以上都是

【答案】:答案解析:野指針是指向無(wú)效地址的指針,A、B、C均會(huì)導(dǎo)致野指針,故選D。13、若intx=3;執(zhí)行以下代碼后a的值是?()inta;if(x>5)a=10;elseif(x>2)a=20;elsea=30;

A.10

B.20

C.30

D.無(wú)定義

【答案】:答案解析:x=3>2,執(zhí)行第二個(gè)分支,a=20,故選B。14、若inti=0;執(zhí)行while(1){printf("%d",i);i++;if(i==3)break;}輸出結(jié)果是?()

A.012

B.0123

C.無(wú)限循環(huán)

D.無(wú)輸出

【答案】:答案解析:while(1)無(wú)限循環(huán),i=3時(shí)break,輸出012,故選A。15、若intx=0;執(zhí)行if(x)printf("A");elseprintf("B");輸出結(jié)果是?()

A.A

B.B

C.AB

D.無(wú)輸出

【答案】:答案解析:x=0為假,執(zhí)行else分支,輸出B,故選B。16、若inta=7;執(zhí)行if(a%3==1)printf("A");elseif(a%3==2)printf("B");elseprintf("C");輸出結(jié)果是?()

A.A

B.B

C.C

D.無(wú)輸出

【答案】:答案解析:7%3=1?7/3=2余1?不,7%3=1?7-3*2=1,條件1成立?哦7%3=1,應(yīng)輸出A?不對(duì),7%3=1,第一個(gè)條件成立,輸出A?重新計(jì)算:7÷3=2余1,a%3=1,執(zhí)行第一個(gè)分支,輸出A,故選A(原解析修正:之前誤算,正確結(jié)果A)。17、指針與字符串的關(guān)系,以下說(shuō)法正確的是?()

A.字符串常量是字符數(shù)組,數(shù)組名是指針

B.字符串可通過(guò)指針遍歷

C.字符指針可指向字符串常量

D.以上都正確

【答案】:答案解析:A、B、C均是指針與字符串的基本關(guān)系,故選D。18、若inti=0;執(zhí)行while(i<5){i++;if(i==3)continue;printf("%d",i);}輸出結(jié)果是?()

A.1245

B.12345

C.01245

D.無(wú)輸出

【答案】:答案解析:i=3時(shí)continue,跳過(guò)printf,輸出1、2、4、5,故選A。19、以下函數(shù)無(wú)返回值的是?()

A.intfun(){return0;}

B.voidfun(){printf("hello");}

C.floatfun(){return3.14;}

D.charfun(){return'b';}

【答案】:答案解析:void類型函數(shù)無(wú)返回值,A、C、D均有返回值,故選B。20、以下指針運(yùn)算錯(cuò)誤的是?()

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錯(cuò)誤),A、B、D均正確,故選C。21、若intx=3,y=5;執(zhí)行if(x>y)printf("x大");elseif(x==y)printf("相等");elseprintf("y大");輸出結(jié)果是?()

A.x大

B.相等

C.y大

D.無(wú)輸出

【答案】:答案解析:x=3<y=5,執(zhí)行else,輸出y大,故選C。22、若inta=5;執(zhí)行if(a>10);elsea=20;后a的值是?()

A.5

B.20

C.10

D.無(wú)定義

【答案】:答案解析:if后分號(hào)表示空語(yǔ)句,else執(zhí)行a=20,故選B。23、若inta=3;執(zhí)行if(++a>3)printf("A");elseprintf("B");輸出結(jié)果是?()

A.A

B.B

C.AB

D.無(wú)輸出

【答案】:答案解析:++a是前置自增,a變?yōu)?>3,條件為真,輸出A,故選A。24、以下哪個(gè)是NULL指針?()

A.void*p=0;

B.int*p=NULL;

C.charp=(char)0;

D.以上都正確

【答案】:答案解析:NULL指針是不指向任何有效地址的指針,三種寫(xiě)法均正確,故選D。25、若intx=2;執(zhí)行switch(x){case1:printf("a");case2:printf("b");case3:printf("c");}輸出結(jié)果是?()

A.b

B.bc

C.abc

D.無(wú)輸出

【答案】:答案解析:x=2匹配case2,無(wú)break,穿透到case3,輸出bc,故選B。26、以下循環(huán)中,用于計(jì)算1到10的乘積的是?()

A.s=0;for(i=1;i<=10;i++)s+=i;

B.s=1;for(i=1;i<=10;i++)s*=i;

C.s=0;while(i<=10){s*=i;i++;}

D.s=1;do{s+=i;i++;}while(i<=10);

【答案】:答案解析:乘積初始值為1,累加初始值為0,B的邏輯是12...*10,正確,故選B。27、以下關(guān)于數(shù)組的說(shuō)法正確的是?()

A.數(shù)組下標(biāo)從1開(kāi)始

B.數(shù)組名可作為左值賦值

C.數(shù)組長(zhǎng)度定義后不可修改

D.數(shù)組元素類型可不同

【答案】:答案解析:數(shù)組下標(biāo)從0開(kāi)始,數(shù)組名是常量(不可賦值),元素類型必須相同,長(zhǎng)度定義后固定,故選C。28、若intx=1;執(zhí)行switch(x){case1:printf("1");break;case1:printf("2");break;}會(huì)出現(xiàn)什么情況?()

A.輸出1

B.輸出2

C.編譯錯(cuò)誤

D.運(yùn)行錯(cuò)誤

【答案】:答案解析:case后常量不能重復(fù),編譯時(shí)會(huì)報(bào)錯(cuò),故選C。29、以下二維數(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第一維可省略(自動(dòng)計(jì)算為2),D初始化元素超6個(gè)(2×3=6),A標(biāo)準(zhǔn)定義正確,故選A。30、若intx=6;執(zhí)行以下代碼后輸出結(jié)果是?()if(x<5){printf("A");}elseif(x<8){printf("B");}else{printf("C");}

A.A

B.B

C.C

D.無(wú)輸出

【答案】:答案解析:x=6<8,執(zhí)行第二個(gè)分支,輸出B,故選B。31、若inta=4;執(zhí)行if(a--<4)printf("A");elseprintf("B");輸出結(jié)果是?()

A.A

B.B

C.AB

D.無(wú)輸出

【答案】:答案解析:a--是后置自減,條件判斷時(shí)a=4,4<4為假,執(zhí)行else(輸出B),后a變?yōu)?,故選B。32、以下函數(shù)遞歸調(diào)用的例子是?()

A.計(jì)算階乘

B.循環(huán)輸出數(shù)字

C.數(shù)組遍歷

D.變量交換

【答案】:答案解析:階乘常用遞歸實(shí)現(xiàn)(n!=n*(n-1)!),B、C、D用循環(huán)更高效,故選A。33、指針與結(jié)構(gòu)體的關(guān)系,以下說(shuō)法正確的是?()

A.結(jié)構(gòu)體指針通過(guò)->訪問(wèn)成員

B.結(jié)構(gòu)體變量通過(guò)。訪問(wèn)成員

C.結(jié)構(gòu)體指針可指向結(jié)構(gòu)體變量

D.以上都正確

【答案】:答案解析:A、B、C均是結(jié)構(gòu)體與指針的基本規(guī)則,故選D。34、二維數(shù)組a[2][3]在內(nèi)存中存儲(chǔ)的順序是?()

A.a[0][0],a[0][1],a[0][2],a[1][0],a[1][1],a[1][2]

B.a[0][0],a[1][0],a[0][1],a[1][1],a[0][2],a[1][2]

C.隨機(jī)順序

D.按列存儲(chǔ)

【答案】:答案解析:二維數(shù)組按行優(yōu)先連續(xù)存儲(chǔ),順序?yàn)榈谝恍兴性兀俚诙?,故選A。35、以下關(guān)于空指針的定義正確的是?()

A.#defineNULL0

B.#defineNULL(void*)0

C.int*p=NULL;

D.以上都正確

【答案】:答案解析:A、B是NULL的常見(jiàn)定義,C是定義空指針,均正確,故選D。36、函數(shù)嵌套調(diào)用是指?()

A.函數(shù)調(diào)用自身

B.函數(shù)調(diào)用另一個(gè)函數(shù)

C.函數(shù)定義中包含另一個(gè)函數(shù)

D.多個(gè)函數(shù)互相調(diào)用

【答案】:答案解析:嵌套調(diào)用是函數(shù)A調(diào)用函數(shù)B,函數(shù)B調(diào)用函數(shù)C,遞歸是調(diào)用自身,故選B。37、下列變量定義語(yǔ)法正確的是?()

A.inta=5;

B.inta=b=5;

C.int5a;

D.inta;b;

【答案】:答案解析:B不能連續(xù)賦值定義,C標(biāo)識(shí)符開(kāi)頭錯(cuò)誤,D分號(hào)分隔需分別定義(inta;intb;),故選A。38、二維數(shù)組a[3][4]的元素個(gè)數(shù)是?()

A.7

B.12

C.3

D.4

【答案】:答案解析:3行4列,共3×4=12個(gè)元素,故選B。39、C語(yǔ)言程序編譯的正確順序是?()

A.預(yù)處理→編譯→匯編→鏈接

B.編譯→預(yù)處理→匯編→鏈接

C.預(yù)處理→匯編→編譯→鏈接

D.鏈接→編譯→匯編→預(yù)處理

【答案】:答案解析:C程序編譯流程為預(yù)處理(處理#命令)→編譯(生成匯編代碼)→匯編(生成目標(biāo)文件)→鏈接(生成可執(zhí)行文件),故選A。40、以下哪個(gè)數(shù)據(jù)類型的占用字節(jié)數(shù)最大?()

A.char

B.short

C.int

D.double

【答案】:答案解析:char(1字節(jié))、short(2字節(jié))、int(4字節(jié))、double(8字節(jié)),故選D。41、表示“x大于5且小于10”的合法C語(yǔ)言表達(dá)式是?()

A.5<x<10

B.x>5||x<10

C.x>5&&x<10

D.x>5&x<10

【答案】:答案解析:邏輯與用&&,邏輯或用||,A是連續(xù)比較語(yǔ)法錯(cuò)誤,&是按位與,故選C。42、若inta[5]={10,20,30,40,50},p=a+3;則p的值是?()

A.30

B.40

C.50

D.無(wú)定義

【答案】:答案解析:a+3指向a[3],*p=40,故選B。43、以下哪個(gè)函數(shù)用于讀取字符?()

A.putchar()

B.gets()

C.getchar()

D.printf()

【答案】:答案解析:getchar()讀取單個(gè)字符,puts()輸出字符串,gets()讀取字符串(已淘汰),故選C。44、若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。45、以下關(guān)于函數(shù)的說(shuō)法正確的是?()

A.函數(shù)可提高代碼復(fù)用性

B.函數(shù)可簡(jiǎn)化程序結(jié)構(gòu)

C.函數(shù)可便于維護(hù)

D.以上都正確

【答案】:答案解析:函數(shù)的核心優(yōu)勢(shì)是復(fù)用、簡(jiǎn)化結(jié)構(gòu)、便于維護(hù),故選D。46、若inti=0;執(zhí)行do{

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論