春考c語言考試題庫(全優(yōu))_第1頁
春考c語言考試題庫(全優(yōu))_第2頁
春考c語言考試題庫(全優(yōu))_第3頁
春考c語言考試題庫(全優(yōu))_第4頁
春考c語言考試題庫(全優(yōu))_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

春考c語言考試題庫第一部分單選題(50題)1、以下函數定義中,參數為兩個int類型的是?()

A.voidfun(inta,floatb){}

B.voidfun(inta,intb){}

C.voidfun(floata,intb){}

D.voidfun(inta,charb){}

【答案】:答案解析:B中兩個參數均為int類型,其余選項參數類型不匹配,故選B。2、以下二維數組定義中,行數為2的是?()

A.inta[2][3];

B.inta[][3]={1,2,3,4,5,6};

C.inta[2][3]={1,2,3,4,5};

D.以上都是

【答案】:答案解析:A行數2,B初始化6個元素(3列×2行),C行數2,故選D。3、以下指針定義正確的是?()

A.int*p;

B.char*q;

C.float*r;

D.以上都正確

【答案】:答案解析:A指向int,B指向char,C指向float,均符合指針定義語法,故選D。4、若inta=10;執(zhí)行if(a%2==0)printf("偶數");elseprintf("奇數");輸出結果是?()

A.偶數

B.奇數

C.10

D.無輸出

【答案】:答案解析:a=10%2=0,條件為真,輸出偶數,故選A。5、以下二維數組定義正確的是?()

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第一維可省略(自動計算為2),D初始化元素超6個(2×3=6),A標準定義正確,故選A。6、以下switch語句中,case后的常量可以是?()

A.整數

B.字符

C.枚舉常量

D.以上都可以

【答案】:答案解析:switch的case后必須是整型常量(整數、字符、枚舉常量,字符本質是ASCII碼整數),故選D。7、以下哪個數據類型的占用字節(jié)數最大?()

A.char

B.short

C.int

D.double

【答案】:答案解析:char(1字節(jié))、short(2字節(jié))、int(4字節(jié))、double(8字節(jié)),故選D。8、轉義字符\0的作用是?()

A.表示空格

B.表示制表符

C.字符串結束標志

D.換行

【答案】:答案解析:\0ASCII碼為0,是字符串默認結束標志,不計入長度,故選C。9、以下關于數組的說法錯誤的是?()

A.數組元素必須是同一類型

B.數組長度必須是常量

C.數組可在函數內定義

D.數組可整體賦值

【答案】:答案解析:數組不能用“=”整體賦值,需逐個元素或循環(huán)賦值,A、B、C正確,故選D。10、若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。11、若inti=0;執(zhí)行while(i<5){i++;if(i==3)continue;printf("%d",i);}輸出結果是?()

A.1245

B.12345

C.01245

D.無輸出

【答案】:答案解析:i=3時continue,跳過printf,輸出1、2、4、5,故選A。12、以下函數聲明錯誤的是?()

A.voidfun(int);

B.voidfun(inta);

C.voidfun(inta,intb);

D.voidfun(inta;intb);

【答案】:答案解析:函數聲明中參數用逗號分隔,不能用分號,D語法錯誤,故選D。13、以下關于void類型函數的說法正確的是?()

A.不能有return語句

B.可以有return語句(無表達式)

C.必須有return語句

D.可返回任意類型

【答案】:答案解析:void函數可寫return;(無表達式),用于提前結束函數,不能返回表達式,故選B。14、以下哪個轉義字符表示制表符?()

A.\n

B.\t

C.\b

D.\r

【答案】:答案解析:\t是制表符(Tab),\n換行,\b退格,\r回車,故選B。15、若intx=4;執(zhí)行switch(x){case2:printf("2");break;default:printf("0");case4:printf("4");break;}輸出結果是?()

A.04

B.4

C.204

D.無輸出

【答案】:答案解析:x=4匹配case4,執(zhí)行輸出4,break跳出,故選B。16、若inta=5,p=&a;則&p的值是?()

A.5

B.&a

C.p

D.無定義

【答案】:答案解析:*&p等價于p,即指針p自身的值(a的地址),故選C。17、以下switch語句中,break語句的位置正確的是?()

A.case后任意位置

B.必須在case代碼最后

C.必須在default后

D.不能在default后

【答案】:答案解析:break可在case代碼任意位置(執(zhí)行到break即跳出),不一定在最后,default后也可加break,故選A。18、若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。19、以下哪個運算符的優(yōu)先級最高?()

A.+

B.*

C.=

D.==

【答案】:答案解析:算術運算符中*(乘)優(yōu)先級高于+(加),賦值(=)和關系(==)優(yōu)先級更低,故選B。20、若inti=0;執(zhí)行for(i=0;i<5;i++){if(i==3)break;printf("%d",i);}輸出結果是?()

A.012

B.0123

C.01234

D.無輸出

【答案】:答案解析:i=3時break,輸出012,故選A。21、若inti=1;執(zhí)行do{printf("%d",i);i++;}while(i<=0);輸出結果是?()

A.1

B.無輸出

C.無限循環(huán)

D.12

【答案】:答案解析:do-while先執(zhí)行一次(輸出1,i=2),再判斷i<=0為假,循環(huán)結束,故選A。22、函數定義在main函數之后時,必須先?()

A.調用函數

B.聲明函數

C.定義函數

D.無要求

【答案】:答案解析:main函數調用其他函數時,若函數定義在main之后,需先聲明(否則編譯器找不到函數),故選B。23、以下函數聲明中,返回類型為float的是?()

A.floatfun();

B.voidfun(floata);

C.intfun(floata);

D.charfun(floata);

【答案】:答案解析:A返回類型為float,B無返回值,C返回類型int,D返回類型char,故選A。24、以下函數聲明正確的是?()

A.intfun(intx,inty);

B.intfun(int,int);

C.intfun(intx;inty);

D.A和B

【答案】:答案解析:函數聲明可寫參數名或只寫類型,A、B正確,C用分號錯誤,故選D。25、以下循環(huán)中,循環(huán)次數為3次的是?()

A.for(i=1;i<=3;i++)

B.while(i=3)

C.do{i++;}while(i<3);

D.for(i=5;i>0;i--)

【答案】:答案解析:A執(zhí)行3次(1-3),B是無限循環(huán),C(i初始0)執(zhí)行3次,D執(zhí)行5次,題目問“3次”,A明確正確,故選A。26、以下關于指針的說法正確的是?()

A.指針可用于遍歷數組

B.指針可用于字符串操作

C.指針可用于函數參數傳遞

D.以上都正確

【答案】:答案解析:指針在數組遍歷、字符串處理、參數傳遞中均有核心作用,故選D。27、若inti=0;執(zhí)行do{printf("%d",i);i++;}while(i<0);輸出結果是?()

A.0

B.無輸出

C.無限循環(huán)

D.01

【答案】:答案解析:do-while先執(zhí)行一次(輸出0,i=1),判斷i<0為假,循環(huán)結束,故選A。28、若inti=0;執(zhí)行do{i++;printf("%d",i);}while(i<3);輸出結果是?()

A.123

B.012

C.12

D.無輸出

【答案】:答案解析:do-while先執(zhí)行,i從1到3,輸出123,故選A。29、遞歸函數的優(yōu)點是?()

A.代碼簡潔,邏輯清晰

B.效率高,占用內存少

C.避免棧溢出

D.適合所有問題

【答案】:答案解析:遞歸優(yōu)點是代碼簡潔(如階乘、斐波那契數列),缺點是效率低、占用??臻g多(可能溢出),故選A。30、若inta=3;執(zhí)行if(++a>3)printf("A");elseprintf("B");輸出結果是?()

A.A

B.B

C.AB

D.無輸出

【答案】:答案解析:++a是前置自增,a變?yōu)?>3,條件為真,輸出A,故選A。31、以下哪個不是C語言的關鍵字?()

A.if

B.else

C.then

D.for

【答案】:答案解析:then不是C語言關鍵字,if(條件)、else(否則)、for(循環(huán))均是,故選C。32、二維數組a[3][4]的元素個數是?()

A.7

B.12

C.3

D.4

【答案】:答案解析:3行4列,共3×4=12個元素,故選B。33、break語句不能用于以下哪種結構?()

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。34、以下函數聲明正確的是?()

A.voidfun();

B.voidfun(inta);

C.intfun(int);

D.以上都正確

【答案】:答案解析:函數聲明可省略形參名(只留類型),A、B、C均符合語法,故選D。35、break語句在循環(huán)中的作用是?()

A.跳過本次循環(huán),繼續(xù)下一次

B.終止整個循環(huán)

C.終止當前語句

D.無作用

【答案】:答案解析:break在循環(huán)中用于終止整個循環(huán)(跳出循環(huán)體),continue是跳過本次循環(huán),故選B。36、shortint類型的有符號取值范圍是?()

A.0~65535

B.-32768~32767

C.-2147483648~2147483647

D.無固定范圍

【答案】:答案解析:16位shortint有符號取值標準為-32768~32767,無符號為0~65535,故選B。37、若floatf=5.9;強制轉換為整型的表達式是?()

A.int(f)

B.(int)f

C.intf

D.(float)f

【答案】:答案解析:強制類型轉換格式為(目標類型)變量,(int)f結果為5(取整數部分),故選B。38、若inta[5];則數組a的元素個數是?()

A.4

B.5

C.6

D.不確定

【答案】:答案解析:數組a[5]定義5個元素(下標0-4),故選B。39、若inti=0;執(zhí)行while(i<5){if(i==2)break;printf("%d",i);i++;}輸出結果是?()

A.01

B.012

C.01234

D.無限循環(huán)

【答案】:答案解析:i=2時執(zhí)行break,終止循環(huán),輸出01,故選A。40、以下哪個數據類型用于存儲單個字符?()

A.int

B.char

C.float

D.double

【答案】:答案解析:char用于存儲單個字符(ASCII碼),int存儲整數,float/double存儲浮點數,故選B。41、以下if-else語句的語法錯誤是?()

A.if(x>0)printf("a");elseprintf("b");

B.if(x>0){printf("a");}else{printf("b");}

C.if(x>0)printf("a");else;printf("b");

D.if(x>0){printf("a");}elseprintf("b");

【答案】:答案解析:else后不能直接加分號(否則else無作用),C中else;后printf獨立執(zhí)行,故選C。42、邏輯表達式3&&0的結果是?()

A.0

B.1

C.3

D.真

【答案】:答案解析:邏輯與&&只要有一個operand為0則結果為0,3為真,0為假,故選A。43、以下數組定義錯誤的是?()

A.inta[0];

B.inta[5];

C.inta[]={1,2,3};

D.inta[5]={1,2,3};

【答案】:答案解析:數組長度不能為0,編譯報錯,其余正確,故選A。44、以下二維數組初始化正確的是?()

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行數超2,B元素不足6個(補0),C標準初始化,D元素超6個,故選C。45、數組名的本質是?()

A.數組第一個元素的地址

B.數組最后一個元素的地址

C.數組元素的個數

D.數組的大小

【答案】:答案解析:數組名是首元素地址(常量,不可修改),故選A。46、以下關于函數參數的說法正確的是?()

溫馨提示

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

評論

0/150

提交評論