專升本C語言真題及答案(全優(yōu))_第1頁
專升本C語言真題及答案(全優(yōu))_第2頁
專升本C語言真題及答案(全優(yōu))_第3頁
專升本C語言真題及答案(全優(yōu))_第4頁
專升本C語言真題及答案(全優(yōu))_第5頁
已閱讀5頁,還剩8頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

專升本C語言真題第一部分單選題(50題)1、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。2、C語言程序的基本單位是?()

A.語句

B.函數(shù)

C.變量

D.表達式

【答案】:答案解析:C程序由函數(shù)構(gòu)成,main是入口函數(shù),其他函數(shù)實現(xiàn)功能,故選B。3、若inti=0;執(zhí)行while(i<5){i++;if(i==3)continue;printf("%d",i);}輸出結(jié)果是?()

A.1245

B.12345

C.01245

D.無輸出

【答案】:答案解析:i=3時continue,跳過printf,輸出1、2、4、5,故選A。4、若inti=0,s=0;執(zhí)行for(i=0;i<4;i++)s+=i;后s的值是?()

A.6

B.10

C.4

D.0

【答案】:答案解析:累加0+1+2+3=6,s=6,故選A。5、若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。6、若inta[3][3]={{1,2},{3,4},{5,6}};則a[1][1]的值是?()

A.2

B.4

C.5

D.6

【答案】:答案解析:a[1][1]是第二行第二列,值為4,故選B。7、數(shù)組名的本質(zhì)是?()

A.數(shù)組第一個元素的地址

B.數(shù)組最后一個元素的地址

C.數(shù)組元素的個數(shù)

D.數(shù)組的大小

【答案】:答案解析:數(shù)組名是首元素地址(常量,不可修改),故選A。8、若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.無輸出

【答案】:答案解析:7%3=1?7/3=2余1?不,7%3=1?7-3*2=1,條件1成立?哦7%3=1,應(yīng)輸出A?不對,7%3=1,第一個條件成立,輸出A?重新計算:7÷3=2余1,a%3=1,執(zhí)行第一個分支,輸出A,故選A(原解析修正:之前誤算,正確結(jié)果A)。9、若inta=10;執(zhí)行if(a%2==0)printf("偶數(shù)");elseprintf("奇數(shù)");輸出結(jié)果是?()

A.偶數(shù)

B.奇數(shù)

C.10

D.無輸出

【答案】:答案解析:a=10%2=0,條件為真,輸出偶數(shù),故選A。10、以下指針與函數(shù)的關(guān)系正確的是?()

A.函數(shù)名是函數(shù)的地址

B.函數(shù)指針可指向函數(shù)

C.可通過函數(shù)指針調(diào)用函數(shù)

D.以上都正確

【答案】:答案解析:A、B、C均是函數(shù)與指針的基本關(guān)系,故選D。11、若inta=5,p=&a;則&p的值是?()

A.5

B.&a

C.p

D.無定義

【答案】:答案解析:*&p等價于p,即指針p自身的值(a的地址),故選C。12、若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。13、若inti;執(zhí)行for(i=0;i<5;i++)printf("%d",i);輸出結(jié)果是?()

A.01234

B.12345

C.012345

D.無輸出

【答案】:答案解析:for循環(huán)初始化i=0,條件i<5(成立時執(zhí)行),每次循環(huán)后i++,執(zhí)行5次,輸出01234,故選A。14、數(shù)組作為函數(shù)參數(shù)時,函數(shù)中修改數(shù)組元素會影響主調(diào)函數(shù)中的數(shù)組嗎?()

A.會(指針傳遞)

B.不會(值傳遞)

C.取決于數(shù)組長度

D.不確定

【答案】:答案解析:數(shù)組名傳參是指針傳遞,函數(shù)中通過指針修改元素會同步到主調(diào)函數(shù)數(shù)組,故選A。15、若inti=0;執(zhí)行do{i++;printf("%d",i);}while(i<3);輸出結(jié)果是?()

A.123

B.012

C.12

D.無輸出

【答案】:答案解析:do-while先執(zhí)行,i從1到3,輸出123,故選A。16、以下switch語句中,break語句的作用是?()

A.終止當(dāng)前case

B.終止switch語句

C.跳過下一個case

D.無作用

【答案】:答案解析:break在switch中用于跳出整個switch語句,避免case穿透,故選B。17、若inti=0,s=0;執(zhí)行do{s+=i;i++;}while(i<5);后s的值是?()

A.10

B.15

C.5

D.0

【答案】:答案解析:do-while累加0+1+2+3+4=10,s=10,故選A。18、以下函數(shù)無返回值的是?()

A.intfun(){return0;}

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

C.floatfun(){return3.14;}

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

【答案】:答案解析:void類型函數(shù)無返回值,A、C、D均有返回值,故選B。19、以下哪個是NULL指針?()

A.void*p=0;

B.int*p=NULL;

C.charp=(char)0;

D.以上都正確

【答案】:答案解析:NULL指針是不指向任何有效地址的指針,三種寫法均正確,故選D。20、以下if語句中,賦值語句和判斷語句混淆的是?()

A.if(x==5)

B.if(x=5)

C.if(x!=5)

D.if(x>5)

【答案】:答案解析:x=5是賦值(將5賦給x),x==5是判斷(x是否等于5),B混淆了兩者,故選B。21、若inta[3]={1,2,3},p=a;則(p+2)的值是?()

A.1

B.2

C.3

D.無定義

【答案】:答案解析:p+2指向a[2],解引用*(p+2)=a[2]=3,故選C。22、C語言中,語句結(jié)束的標志是?()

A.逗號

B.分號

C.冒號

D.句號

【答案】:答案解析:C語言單條語句以分號(;)結(jié)尾,復(fù)合語句用{}包裹,故選B。23、若inta[4]={1,2,3,4};則a[3]的值是?()

A.3

B.4

C.1

D.2

【答案】:答案解析:a[3]是第四個元素,值為4,故選B。24、若inti=0;執(zhí)行for(i=0;i<5;i++){printf("%d",i);if(i==2)break;}輸出結(jié)果是?()

A.012

B.01

C.01234

D.無輸出

【答案】:答案解析:i=2時break,輸出012,故選A。25、以下數(shù)組定義錯誤的是?()

A.inta[5];

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

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

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

【答案】:答案解析:C初始化元素超5個,編譯報錯,其余正確,故選C。26、若inta=7,*p=&a;執(zhí)行++*p;后a的值是?()

A.7

B.8

C.&a

D.無定義

【答案】:答案解析:++*p等價于++(*p),先解引用取a的值,再加1(a=8),故選B。27、以下指針的算術(shù)運算中,單位是?()

A.1字節(jié)

B.指針指向類型的大小

C.4字節(jié)

D.8字節(jié)

【答案】:答案解析:指針算術(shù)運算(如p++)偏移量是指向類型的大小(如int指針+1偏移4字節(jié)),故選B。28、以下if語句中,賦值表達式作為條件的是?()

A.if(x==3)

B.if(x=3)

C.if(x>3)

D.if(x!=3)

【答案】:答案解析:x=3是賦值表達式,結(jié)果為3(非0,真),其余是判斷表達式,故選B。29、若inta=4,b=6;則表達式a<b?a+b:a-b的結(jié)果是?()

A.10

B.-2

C.4

D.6

【答案】:答案解析:a<b為真,取a+b=4+6=10,故選A。30、以下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。31、若intx=1;執(zhí)行switch(x){case1:printf("1");break;case1:printf("2");break;}會出現(xiàn)什么情況?()

A.輸出1

B.輸出2

C.編譯錯誤

D.運行錯誤

【答案】:答案解析:case后常量不能重復(fù),編譯時會報錯,故選C。32、以下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是浮點型,語法錯誤,故選C。33、二維數(shù)組a[3][4]的元素個數(shù)是?()

A.7

B.12

C.3

D.4

【答案】:答案解析:3行4列,共3×4=12個元素,故選B。34、若inta[3][4]={{1,2},{3,4,5},{6}};則a[0][1]的值是?()

A.1

B.2

C.3

D.4

【答案】:答案解析:a[0][1]是第一行第二列,值為2,故選B。35、若charstr="hello";則str[1]的值是?()

A.'h'

B.'e'

C.'l'

D.'\0'

【答案】:答案解析:str是字符串首地址,str[1]等價于(str+1),值為'e',故選B。36、以下函數(shù)參數(shù)為指針的是?()

A.voidfun(int*a){}

B.voidfun(inta){}

C.voidfun(inta[]){}

D.A和C

【答案】:答案解析:A是指針參數(shù),C數(shù)組名參數(shù)本質(zhì)是指針,B是值參數(shù),故選D。37、若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。38、若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。39、while循環(huán)的語法格式正確的是?()

A.while(條件)語句;

B.while條件語句;

C.while(條件);語句;

D.while(條件){語句}

【答案】:答案解析:while后條件需加括號,語句可是單條(加分號)或代碼塊(用{}),D缺少分號,故選A。40、以下關(guān)于二維數(shù)組的說法正確的是?()

A.二維數(shù)組是數(shù)組的數(shù)組

B.二維數(shù)組元素在內(nèi)存中按列存儲

C.二維數(shù)組長度必須是常量

D.二維數(shù)組不能作為函數(shù)參數(shù)

【答案】:答案解析:二維數(shù)組本質(zhì)是數(shù)組的數(shù)組,內(nèi)存按行存儲,可作為函數(shù)參數(shù),長度需常量,故選A。41、C語言中,宏定義的預(yù)處理命令關(guān)鍵字是?()

A.include

B.define

C.ifdef

D.endif

【答案】:答案解析:#define用于宏定義,#include用于包含頭文件,#ifdef/endif是條件編譯,故選B。42、指針作為函數(shù)參數(shù)時,傳遞的是?()

A.指針的值

B.指針的地址

C.變量的值

D.變量的地址

【答案】:答案解析:指針傳參本質(zhì)是傳遞變量地址,函數(shù)中通過指針可修改實參值,故選D。43、以下函數(shù)定義中,參數(shù)為指針的是?()

A.voidfun(int*a){printf("%d",*a);}

B.voidfun(inta){printf("%d",a);}

C.voidfun(inta[]){printf("%d",a[0]);}

D.A和C

【答案】:答案解析:A是指針參數(shù),C數(shù)組名參數(shù)本質(zhì)是指針,B是值參數(shù),故選D。44、以下switch語句中,default的作用是?()

A.匹配所有case

B.匹配除case外的所有情況

C.終止switch語句

D.無實際作用

【答案】:答案解析:default用于匹配所有case未覆蓋的情況,可選且位置靈活,故選B。45、函數(shù)參數(shù)傳遞中,值傳遞的特點是?()

A.形參修改影響實參

B.形參是實參的副本

C.傳遞的是變量地址

D.用于數(shù)組傳參

【答案】:答案解析:值傳遞時形參是實參的拷貝,修改形參不影響實參,地址傳遞才影響實參,故選B。46、以下關(guān)于函數(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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論