C語(yǔ)言練習(xí)題機(jī)房題庫(kù)_第1頁(yè)
C語(yǔ)言練習(xí)題機(jī)房題庫(kù)_第2頁(yè)
C語(yǔ)言練習(xí)題機(jī)房題庫(kù)_第3頁(yè)
C語(yǔ)言練習(xí)題機(jī)房題庫(kù)_第4頁(yè)
C語(yǔ)言練習(xí)題機(jī)房題庫(kù)_第5頁(yè)
已閱讀5頁(yè),還剩164頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

門單選題:(每題2分,共80分)

1、下列不合法的十六進(jìn)制數(shù)是()(2分)

A.oxff

B.OXcde

C.OxiI

D.0x23

參考答案:A

2、將三個(gè)數(shù)排序需要比較次。:2分)

A.2

B.3

C.4

D.不確定

參考答案:B

3、以下程序的輸出結(jié)果是

main()

{intk=17:

printf("%d,%o,%x\n",k,k,k);

}(2分)

A.17,021,0x11

B.17,17,17

C.17,0x11,021

D.17,21,11

參考答案:D

4、在C語(yǔ)言中,合法的字符常量是.

(2分)

A.'\084'

B.'\x43'

C.'ab'

D.〃\0〃

參考答案:B

5、在C語(yǔ)言中,int、char和short三種類型數(shù)據(jù)在內(nèi)存中所

占用的字節(jié)數(shù)

(2分)

A.由用用戶自己定義

B.均為2個(gè)字節(jié)

C.是任意的

D.由所用機(jī)器的機(jī)器字長(zhǎng)決定

參考答案:D

6、若有定義:inta二8,b=5,C;,執(zhí)行語(yǔ)句C=a/b+O.4;后,c

的值為

(2分)

A.1.4

B.1

C.2.0

D.2

參考答案:B

7、設(shè)有說明語(yǔ)句:chara=、72]則變量a

(2分)

A,包含1個(gè)字符

B.包含2個(gè)字符

C.包含3個(gè)字符

D.說明不合法

參考答案:A

8、若有以下說明和語(yǔ)名:

inta=5,m;

m=a++:

此處表達(dá)式m的值是

(2分)

A.7

B.6

C.5

D.4

參考答案:C

9、以下程序的輸出結(jié)果是

main()

intx=10,y=10;

printf("%d%d\n",x-,-y);

)

(2分)

A.1010

B.99

C.910

D.109

參考答案:D

10、下列選項(xiàng)中,不正確的賦值語(yǔ)句是(2分)

A.++t;

B.n1=(n2=(n3=0)):

C.k=1=j:

D.a=b+c=1;

參考答案:C

11、以下程序段的揄出結(jié)果是

inta=1234;

printf("%2d\n",a);

(2分)

A.12

B.34

C.1234

D.提示出錯(cuò)、無(wú)結(jié)果

參考答案:C

12、為表示關(guān)系x2y2z,應(yīng)使用C卷言表達(dá)式—

(2分)

A.(x>=y)&&(y>=z)

B.(x>=y)AND(y>=z)

C.(x>=y>=z)

D.(x>=y)&(y>=z)

參考答案:A

13、設(shè)有:inta=1,b=2,c=3,d=4,m=2,n=2;

執(zhí)行(m二a>b)&&(n=c>d)后n的值是

(2分)

A.1

B.2

C.3

D.4

參考答案:B

14、判斷char型變量cl是否為小寫字母的正確表達(dá)式是

(2分)

A.,a,<=cl<='z'

B.(cl>=a)&&(cl<=z)

C.(匕,>二cl)||('z'<=cl)

D.(cl>='a,)&&(cl<='z')

參考答案:D

15、能正確表示邏輯關(guān)系:“a2=10或a<0”的C語(yǔ)言表達(dá)

式是

(2分)

A.a>=<0ora<=0

B.a>=0||a<=10

C.a>=**0&&a<-0

D.a<=0||a>=10

參考答案:D

16、執(zhí)行下面語(yǔ)句后的輸出為()

inti=-1;

if(i<=0)printf("****\n");

eIseprintf("%%%%\n");

(2分)

A****

B.%%%%

C.%%%%C

D.有語(yǔ)法錯(cuò),不能執(zhí)行

參考答案:A

17、若要求在if后一對(duì)圓括號(hào)中表示a不等于0的關(guān)系,則能正

確表示這一關(guān)系的表達(dá)式為O

(2分)

A.a<>0

B.!a

C.a二0

D.a!=0

參考答案:D

18、若K為整型,以下while循環(huán)執(zhí)行()次

K=0;

whiIe(K=0)K=K-1;

(2分)

A.執(zhí)行10次

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

C.一次也不執(zhí)行

D.執(zhí)行一次

參考答案:C

19、以下程序的輸出結(jié)果是()

voidmain()

{inty=5;whlie(y-);

printf("y=%d\n",y);)(2分)

A.y=0

B.y=1

C.y=-1

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

參考答案:C

20、C語(yǔ)言中whiIe和do...whiIe循環(huán)的主要區(qū)別()(2分)

A.do...whiIe的循環(huán)體至少執(zhí)行一次

B.whiIe的循環(huán)條件比do...whiIe的循環(huán)條件嚴(yán)格

C.do...whiIe循環(huán)允許從外部轉(zhuǎn)到循環(huán)體內(nèi)

D.do...whiIe的循環(huán)體不能是復(fù)合語(yǔ)句

參考答案:A

21、如果輸入為:ABCdef執(zhí)行下面一段程序后,則輸出為:

main()

{charch;

whiIe((ch=getchar())!='\n')

{if(ch>='A'&&ch<='Z,)ch=ch+32;

elseif(ch>='a'&&ch<'z')ch=ch-32;

printf("%c",ch);

)

printf("\n"):

)(2分)

A.ABCdef

B.abcDEF

C.abc

D.DEF

參考答案:B

22、以下選項(xiàng)中正確的定義語(yǔ)句是0

(2分)

A.doubIea;b;

B.doubIea二b二0;

C.doublea=7,b=0;

D.double,a,b;

參考答案:C

23、若有說明inta[3][4];則對(duì)a數(shù)組元素的正確引用是

(2分)

A.a[2][4]

B.a[1,3:

C.a[1+1][0]

D.a(2)(1)

參考答案:C

24、若有說明inta[3][4];則a數(shù)組元素的非法引用是

(2分)

A.a[0][2*1]

B.a[1][3]

C.a[4-2:[0]

D.a[0][4]

參考答案:D

25、以下不能對(duì)二維數(shù)組a進(jìn)行正確初始化的語(yǔ)句是

(2分)

A.inta[2][3]={0};

B.inta[][3]={{1,2},{0});

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

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

參考答案:C

26、設(shè)有數(shù)組定義:chararray□二"China";,則數(shù)組array

所占的空間為((2分)

A.4個(gè)字節(jié)

B.5個(gè)字節(jié)

C.6個(gè)字節(jié)

D.7個(gè)字節(jié)

參考答案:C

27、以下程序運(yùn)行后,輸出結(jié)果是

#definePT5.5

#difineS(x)PT*x*x

main()

{inta=1,b=2;

print("%4.If/n",S(a+b));

}(2分)

A.49.5

B.9.5

C.22.0

D.45.0

參考答案:B

28、下面程序的輸出結(jié)果是

main()

{inta[]={1,2,3,4,5,6,7,8,9,0,),*p;

P=a;

printf("%d\n",*p+9);

)(2分)

A.0

B.1

C.10

D.9

參考答案:C

29、在C語(yǔ)言中,下面那種數(shù)據(jù)類型不屬于構(gòu)造類型(

(2分)

A.枚舉類型

B.數(shù)組類型

C.結(jié)構(gòu)體類型

D,共用體類型

參考答案:A

30、C語(yǔ)言程序是由()組成(2分)

A.一個(gè)主程序和若干子程序

B.函數(shù)

C.若干過程

D.若干子程序

參考答案:B

31、putchar函數(shù)可以向終端輸出一個(gè)()(2分)

A.整型變量表達(dá)式值

B.實(shí)型變量值

C.字符串

D.字符或字符型變量值

參考答案:D

32、請(qǐng)讀程序:

#incIude

FUNC(intA,intB)

{intC;

C=A+B;

returnC;

1

main()

{intX=6,Y=7,Z=8,R;

R=FUNC(X+Y,Z-);

printf("%d\n",R);

上面程序的輸出結(jié)果是

(2分)

A.11

B.20

C.21

D.31

參考答案:C

33、C語(yǔ)言函數(shù)的隱含存儲(chǔ)類別是.

(2分)

A.extern

B.static

C.register

D.auto

參考答案:D

34、以下不正確的說法是()

(2分)

A.在不同的函數(shù)中可以使用相同名字的變量

B.形式參數(shù)是局部變量

C.在函數(shù)內(nèi)定義的變量只在本函數(shù)范圍內(nèi)有效

D.在函數(shù)內(nèi)的復(fù)合語(yǔ)句中定義的變量在本函數(shù)范圍內(nèi)有效

參考答案:D

35、有以下程序

viodfun(inta,intb,intc)

{a=456;b=567;c=678;)

main()

{intx=10,y=20,z=30;

fun(x,y,z);

printf("%d,%d,%d\n",x,y,z);

輸出結(jié)果是

(2分)

A.30,20,10

B.10,20,30

C.456,567,678

D.678,567,456

參考答案:B

36、以下敘述中正確的是(2分)

A.A)C程序中的注釋只能出現(xiàn)在程序的開始位置和語(yǔ)句的

后面

B.C程序書寫格式嚴(yán)格,要求一行內(nèi)只能寫一個(gè)語(yǔ)句

C.C程序書寫格式自由,一個(gè)語(yǔ)句可以寫在多行上

D.用C語(yǔ)言編寫的程序只能放在一個(gè)程序文件中

參考答案:C

37、下列可用于C語(yǔ)言用戶標(biāo)識(shí)符的一組是(2分)

A.void,define,WORD

B.a3_3,_123,Car

C.For,-abc,IFCase

D.2a,DO,sizeof

參考答案:B

38、以下敘述中錯(cuò)誤的是(2分)

A.用戶好定義的標(biāo)識(shí)符允許使用關(guān)健字

B.用戶分定義的標(biāo)識(shí)符應(yīng)盡量做到“見名識(shí)意”

C.用戶分定義的標(biāo)識(shí)符中,大、小寫字母代表不同標(biāo)識(shí)

D.用戶所定義的標(biāo)識(shí)符必須以字母或下劃線開頭

參考答案:A

40、有如下程序段

int*p,a=10,b=1

p=&a;a=*p+b:

執(zhí)行該程序段后,a的值為

(2分)

A.12

B.11

C.10

D.編譯出錯(cuò)

參考答案:B

程序設(shè)計(jì)題(以下3題中任選2題作答,每題10分,共20分):

1、編程序求出100到500之間同時(shí)滿足除3余2和除5余3條

件的數(shù)的個(gè)數(shù)。(10分)

參考答案:

main()

(

inti,num=O;

for(i=100;i<=500;i++)

(

if((設(shè)3=2)&&(i%5=3))

num=num+1;

)

printf(,,\n%d/,,num);

)

本題答案:20

2、編寫程序,求在10~1000之間所有能被4除余2,被7除余3,

被9除余5的數(shù)之和。(10分)

參考答案:

main()

{longs=0;

intm;

for(m=10;m<='000;m++)

(

if(田%4=2&&福7=3&&【喉9二5)

s=s+m;

)

printf(〃%d\n",s);

)

本題參考答案:2000

3、編寫程序,要求從鍵盤輸入一個(gè)字符,轉(zhuǎn)換其大小寫并輸

出。(10分)

參考答案:

voidmain。

{

charchl,ch2;〃chl:輸入前的字符,ch2:轉(zhuǎn)換后的字符

printf(^pleaseinputachar:");

scanf(〃%c〃,&chl);

if(chl>=A*&&chl<='Z')

ch2=chl+32;

if(chl>=,a'&&ch2<='z')

ch2=chl-32;

printf("轉(zhuǎn)換后的字符為:%c\n〃,ch2);

)

。單選題:(每題2分,共80分)

1、()是構(gòu)成c語(yǔ)言程序的基本單位(2分)

A.函數(shù)

B.變量

C.子程序

D.語(yǔ)句

參考答案:A

3、以下選項(xiàng)中屬于C語(yǔ)言的數(shù)據(jù)類型是

(2分)

A.復(fù)數(shù)型

B.邏輯型

C.雙精度型

D.集合理

參考答案:C

4、若變量a是int類型,并執(zhí)行了語(yǔ)句:a='A'+1.6;,則正

確的敘述是

(2分)

A.a的值是字符C

B.a的值是浮點(diǎn)型

C.不允許字符型和浮點(diǎn)型相加

D.a的值是字符‘A'的ASCII值加上1

參考答案:D

5、以下所列的C語(yǔ)言常量中,錯(cuò)誤的是

(2分)

A.OxFF

B.1.2e0.5

C.2L

D.'\72'

參考答案:B

6、若已定義x和y為double型,則表達(dá)式:x=1,y=x+3/2的值

是—(2分)

A.1

B.2

C.2.0

D.2.5

參考答案:c

7、表達(dá)式((a=3*5,a*5),a+5)的值是多少()

(2分)

A.20

B.80

C.不能確定

D.15

參考答案:A

9、若有說明語(yǔ)句:inta,b,c;

則能正確從鍵盤讀入三個(gè)整數(shù)分別賦給變量a、b、c的語(yǔ)句是

(2分)

A.scant&a,&b,&c);

B.scanf&a,&b,&d);

C.scanf<"%d%d%d",a,b,d);

D.scanf(H%d%d%d",a,b,*d);

參考答案:A

10、以下說法中正確的是

(2分)

A.#define和printf都是C語(yǔ)句

B.#define是C語(yǔ)句,而printf不是

C.printf是C語(yǔ)句,但#(招行倭不是

D.#define和printf都不是C語(yǔ)句

參考答案:D

11、設(shè)有如下定義:

==

int31fb—2,c31d—4,m—2,n=2;

則執(zhí)行表達(dá)式:(m=a>b)&&(n=c>d)后,n的值為.

(2分)

A.1

B.2

C.3

D.0

參考答案:B

13、能正確表示a和b同時(shí)為正或同時(shí)為負(fù)的邏輯表達(dá)式是

(2分)

A.(a>=0IIb>=0)&&(a<0||b<0)

B.(a>=0&&b>=0)&&(a<0&&b<0)

C.(a+b>0)&&(a+b<=0)

D.a*b>0

參考答案:D

15、為避免嵌套的條件分支語(yǔ)句if…else的二義性,C語(yǔ)言規(guī)

定,C程序中的

eIse總是與組成配對(duì)關(guān)系。

(2分)

A.其上面距它最近的,并且沒有其他else與其配對(duì)的if

相配對(duì)

B.在同一行上的if

C.縮排位置相同的if

D.在其之前未配對(duì)的if

參考答案:A

16、以下程序諭出結(jié)果是

main()

{intm=5;

if(m++>5)printf("%d\n",m);

eIseprintf;"%d\n",m-);

)(2分)

A.7

B.6

C.5

D.4

參考答案:B

18、以下程序段的輸出結(jié)果是

intx=3;

do

{printf("%3d",x-=2);)

while(!(―x));

(2分)

A.1

B.30

C.1-2

D.死循環(huán)

參考答案:C

19、執(zhí)行語(yǔ)句:for(i=1;i++<4;);后,變量i的值是

(2分)

A.3

B.4

C.5

D.不定

參考答案:C

20、以下程序的輸出結(jié)果是

main()

{intn=4;

while(n-)printf("%d",―n);

1(2分)

A.20

B.31

C.321

D.210

參考答案:A

21、設(shè)有程序段

intk=10;

while(k=0)k=k-1;

則下面描述中正確的是

(2分)

A.while循環(huán)執(zhí)行10次

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

C.循環(huán)體語(yǔ)句一次也不執(zhí)行

D.循環(huán)體語(yǔ)句執(zhí)行一次

參考答案:C

22、若有說明:inta[10];,則對(duì)a數(shù)組元素的正確引用是

()。(2分)

A.a[10]

B.a[3.5:

C.a(5)

D.a[10-0]

參考答案:D

23、若二維數(shù)組a有m列,則計(jì)算任一元素在數(shù)綱中位

置的公式為(假設(shè)a[0][0]位于數(shù)組的第一個(gè)位置上)

(2分)

A.i*m+j

B.j*m+i

C.i*m+j-1

D.i*m+j+1

參考答案:D

24、已知inta[][3]={1,2,3,4,5,6,7);,則數(shù)組a的

第一維的大小是()。(2分)

A.2

B.3

C.4

D.無(wú)確定值

參考答案:B

26、以下程序的輸出結(jié)果是

#definef(x)x*x

main()

1inta=6,b=2,c;

c=f(a)/f(b);

printf("%d\n",c);

}(2分)

A.9

B.6

C.36

D.18

參考答案:C

28、變量的指針,其含義是指該變量的

(2分)

A.值

B.地址

C.名

D.一個(gè)標(biāo)志

參考答案:B

30、以下不合法的數(shù)值常量是()

(2分)

A.011

B.1e1

C.8.0e0.5

D.Oxabcd

參考答案:C

31、以下敘述中錯(cuò)誤的是()(2分)

A.用戶自定義的函數(shù)中可以沒有return語(yǔ)句

B.用戶自定義函數(shù)中若沒有return語(yǔ)句,則應(yīng)當(dāng)定義函數(shù)

為void類型

C.C語(yǔ)言程序總是從main。函數(shù)開始執(zhí)行

D.main。函數(shù)必須位于程序的開始

參考答案;D

34、C語(yǔ)言中,調(diào)用一個(gè)函數(shù)時(shí),實(shí)參變量和形參變量之間的數(shù)

據(jù)傳遞是.

(2分)

A.單向的值傳遞

B.單純她址傳遞

C.值傳遞和地址傳遞都有可能

D.由實(shí)參傳給形參,然后由形參傳回給實(shí)參,即是雙向傳

參考答案:A

35、當(dāng)調(diào)用函數(shù)時(shí),實(shí)參是一個(gè)數(shù)組名,則向函數(shù)傳遞的是

()o(2分)

A.數(shù)組的長(zhǎng)度

B.數(shù)組的首地址

C.數(shù)組每一個(gè)元素的地址

D.數(shù)組每個(gè)元素中的值

參考答案:B

36、下列敘述不正確的是()(2分)

A.在c程序中,%是只能用于整數(shù)運(yùn)算的運(yùn)算符

B.在C程序中,無(wú)論是整數(shù)還是實(shí)數(shù),都能正確無(wú)誤地表

C.若a是實(shí)型變量,c程序中a=20是正確的,因此實(shí)型變

量允許被整型常量賦值

D.在C程序中,語(yǔ)句之間必須要用分號(hào)“;”分隔

參考答案:B

38、以下可用作C語(yǔ)言用戶標(biāo)識(shí)符的是(2分)

A.void,define,WORD

B.a3_b3,_123,IF

C.FOR,-abc,Case

D.2a,Do,Sizeof

參考答案:B

39、以下關(guān)于運(yùn)算符優(yōu)先順序的描述中正確的是

(2分)

A.關(guān)系運(yùn)算符<笄術(shù)運(yùn)笄符<賦值運(yùn)算符<邏輯運(yùn)笄

B.邏輯運(yùn)算符<關(guān)系運(yùn)算符<算術(shù)運(yùn)算符<賦值運(yùn)算

C.賦值運(yùn)算符<邏輯運(yùn)算符<關(guān)系運(yùn)算符<算術(shù)運(yùn)算

D.算術(shù)運(yùn)算符<關(guān)系運(yùn)算符<賦停運(yùn)算符<邏輯運(yùn)算

參考答案:C

40、現(xiàn)有定義inta;doubleb;floatc;chark;,則表達(dá)式

a/b+c-k值的類型為:(2分)

A.int

B.doubIe

C.float

D.char

參考答案:B

二程序設(shè)計(jì)題(以下3題中任選2題作答,每題10分,共20分):

1、編程序求廣120所有整數(shù)的平方和并繚出結(jié)果。(10分)

參考答案:

main()

{longinta,s=0;

clrscr();

for(a=l;a<=120;a++)

{s=s+a*a;

)

printfs);

)

本題答案:583220

2、編程序求出1-4000以內(nèi)能被3或者11整除數(shù)的個(gè)數(shù)。(10

分)

參考答案:

main()

{

inti,num=0;

for(i=l;i<=4000;i++)

(

if((i%3==0)&&(i%ll==0))

num=num+l;

)

printf(z,\n%dA,,num);

本題答案:121

3、編寫程序,要求從鍵盤輸入一個(gè)正整數(shù),判斷該數(shù)既是5又

是7的整倍數(shù),若是,則輸出yes,否則輸出no。(10分)

參考答案:

voidmain()

intx;

printf(^pleaseinputainteger/');

scanf(〃%d〃,&x);

if(x%5=0&&x%7=0)

printf(〃yes\n〃);

else

printf(〃no\n");

}

。單選題:(每題2分,共80分)

1、C語(yǔ)言程序的基本單位是.

(2分)

A.語(yǔ)句

B.函數(shù)

C.程序行

D.字符

參考答案:B

2、以下敘述不正確的是()

(2分)

A.一個(gè)c源程序可由一個(gè)或多個(gè)函數(shù)組成

B.一個(gè)C源程序必須包含一個(gè)main。函數(shù)

C.c程序的基本組成單位是函數(shù)

D.在C程序中,注釋說明只能位于一條語(yǔ)句的后面

參考答案:D

3、以下選項(xiàng)中,非法的字符常量是()

(2分)

A.'\t'

B.'\17'

C."n"

D.'\xaa'

參考答案:C

5、下面四個(gè)選項(xiàng)中,均是不合法的用戶標(biāo)識(shí)符的選項(xiàng)是

(2分)

A.AP_0do

B.floatlaO_A

C.b-agotoint

D._123tempint

參考答案:C

6、若變量a、i已正確定義,且i已正確賦值,合法的語(yǔ)句是

(2分)

A.a==1

B.++i;

C.a=a++二5;

D.a-int(i);

參考答案:B

7、設(shè)有以下定義:

intx=10,y=3,z;

則語(yǔ)句

printf("%d\n",z=(x%y,x/y))

的輸出結(jié)果是

(2分)

A.1

B.0

C.4

D.3

參考答案:D

8、設(shè)ch是char型變量,其值為A,且有下面的表達(dá)式:

ch=(ch>='A'&&ch<='Z')?(ch+32):ch

上面表達(dá)式的,直是(2分)

A.A

B.a

C.Z

D.z

參考答案:B

9、設(shè)x為int型變量,則執(zhí)行以下語(yǔ)句后,x的值為.

x=10;x+=x-=x-x;

(2分)

A.10

B.20

C.40

D.30

參考答案:B

10、表達(dá)式18/4*sqrt(4.0)/8值的數(shù)據(jù)類型為(2分)

A.int

B.fIoat

C.doubIe

D.不確定

參考答案:C

11、以下程序的揄出結(jié)果是

main()

(charstrEnX's-Zt'/r'/i'/n'/g');

printf("%d\n",strIen(str));

1(2分)

A.6

B.7

C.11

D.12

參考答案:A

12、當(dāng)c的值不為0時(shí),在下列選項(xiàng)中能正確將c的值賦給變量

a、b的是

(2分)

A.c=b=a:

B.(a=c)II(b=c);

C.(a二c)&&(b二c);

D.a=c=b:

參考答案:C

13、邏輯運(yùn)算符兩側(cè)運(yùn)算對(duì)象的數(shù)據(jù)類型

(2分)

A.只能是0或1

B.只能是0或非0正教

C.只能是整型或字符型數(shù)據(jù)

D.可以是任何類型的數(shù)據(jù)

參考答案:D

15、在C語(yǔ)言中,邏輯值“真”用()表示

(2分)

A.TRUE

B.大于0的數(shù)

C.非0的整數(shù)

D,非0的教

參考答案:D

16、判斷字符型變量x是否是大寫字母的正確的表達(dá)式.

(2分)

A.,A'<=x<=,Z,

B.(x>=A)&&(x<=Z)

C.(,A'<=x)&&(,Z,=>x)

D.(x>='A')&&(x<='Z')

參考答案:D

19、以下敘述正確的是()

(2分)

A.do-while語(yǔ)句構(gòu)成的循環(huán)不能用其它語(yǔ)句構(gòu)成的循環(huán)來

代替

B.do-whiIe語(yǔ)句構(gòu)成的循環(huán)只能用break語(yǔ)句退出

C.用do-whiIe語(yǔ)句構(gòu)成的循環(huán),在whiIe后的表達(dá)式為非

零時(shí)結(jié)束循環(huán)。

D.用do-whiIc語(yǔ)句構(gòu)成的循環(huán),在whiIc后的表達(dá)式為零

時(shí)結(jié)束循環(huán)。

參考答案:D

20、在下列選項(xiàng)中,構(gòu)成死循環(huán)的程序段是

(2分)

A.inti=100;

B.for(;:);

C.intk=1000;

D.ints=36;

參考答案:B

21、假定a和b為int型變量,則執(zhí)行以下語(yǔ)句后b的值為

a=1;b=10;

do

{b=b-a;a++;)

while(b—>0);

(2分)

A.-3

B.-2

C.-1

D.-4

參考答案:D

23、在C語(yǔ)言中,當(dāng)while語(yǔ)句中的條件為()時(shí),結(jié)束該循環(huán).

(2分)

A.0

B.1

C.TRUE

D.非0

參考答案:A

25、對(duì)以下說明語(yǔ)句的正確理解是

inta[10]={6,7,8,9,10);

(2分)

A.將5個(gè)初值依次賦給a[1]至a[5]

B.將5個(gè)初值依次賦給a[0]至a[4:

C.將5個(gè)初值依次賦給a[6]至a[10]

D.因?yàn)閿?shù)組長(zhǎng)度與初值的個(gè)數(shù)不相同,所以此語(yǔ)句不正確

參考答案:B

26、以下對(duì)二維數(shù)組a的正確說明是

(2分)

A.inta[3][]

B.fIoata(3,4)

C.doublea[1][4]

D.floata(3)(4)

參考答案:C

27、合法的數(shù)組說明語(yǔ)句是()。(2分)

A.inta[]="string";

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

C.chara="string";

D.chara[]=[0,1,2,3,4,5];

參考答案:D

31、在16位IBM-PC機(jī)上使用C語(yǔ)言,若有如下定義

structdata

(inti;

charch;

doubIef;

lb;

則結(jié)構(gòu)變量b占用內(nèi)存的字節(jié)數(shù)是

(2分)

A.1

B.2

C.8

D.11

參考答案:D

32、在位運(yùn)算中,操作數(shù)每右移一位,其結(jié)果相當(dāng)于

(2分)

A.操作數(shù)乘以2

B.操作數(shù)除以2

C.操作數(shù)乘以4

D.操作數(shù)除以4

參考答案:B

33、以下敘述中不正確的是

(2分)

A.預(yù)處理命令行都必須以#號(hào)開始

B.在程序中凡是以#號(hào)開始的語(yǔ)句行都是預(yù)處理命令行

C.以下是正確的宏定義#defineIBM_PC

D.C程序在執(zhí)行過程中對(duì)預(yù)處理命令行進(jìn)行處理

參考答案:D

36、C程序中,若函數(shù)調(diào)用采用傳值方式,則()

(2分)

A.實(shí)參和虛參各自占有存儲(chǔ)單元

B.實(shí)參和虛參共享存儲(chǔ)單元

C.由用戶指定

D.由計(jì)算機(jī)隨機(jī)確定

參考答案:A

37、在一個(gè)源文件中定義的外部變量的作用域?yàn)椋ǎ﹐(2分)

A.本文件的全部范圍

B.本程序的全部范圍

C.本函數(shù)的全部范圍

D.從定義該變量的位置開始至本文件結(jié)束

參考答案:B

39、一個(gè)C語(yǔ)言程序總是從()開始執(zhí)行(2分)

A.主過程

B.主函數(shù)

C.子程序

D.主程序

參考答案:B

40、C語(yǔ)言中最簡(jiǎn)單的數(shù)據(jù)類型包括:_

(2分)

A.整型,實(shí)型,邏輯型

B.整型,字符型,邏輯型

C.整型,實(shí)型,字符型

D.卷型,實(shí)型,邏輯組,字符型

參考答案:C

二程序設(shè)計(jì)題(以下3題中任選2題作答,每題10分,共20分):

1、編程序求2+4+8+16+32+…這樣的數(shù)之和「如果累加數(shù)大于

3000時(shí),則程序終止并輸出結(jié)果。(10分)

參考答案:

main()

{

inti=2,sum=0;

while(sum<=3000)

(

sum=sum+i;

i=i*2;

)

printf(〃\n%d”,sum);

)

本題答案:4094

2、編程序求1~100能被7整除的個(gè)數(shù)。(10分)

參考答案;

main()

{inta,n=0;

for(a=l;a<=10;a++)

{if(a%7==0)

n++;

)

printf(〃%d〃,n);

)

本題答案:71

3、編寫程序,要求從鍵盤輸入一個(gè)整數(shù),打印出它是奇數(shù)還是

偶數(shù)?(10分)

參考答案:

voidmain()

{

intx;

printf(z,pleaseinputainteger:");

scanf(〃%d〃,&x);

if(x%2==l)

printfC%d是奇數(shù)\n〃,x);

else

printf(〃刎是偶數(shù)\n〃,x);

}

。單選題:(每題2分,共80分)

1、C語(yǔ)言可執(zhí)行程序的開始執(zhí)行點(diǎn)是()

(2分)

A.程序干的一條可執(zhí)行語(yǔ)句

B.程序中第一個(gè)函數(shù)

C.程序中的main函數(shù)

D.包含文件中的第一個(gè)函數(shù)

參考答案:C

2、C語(yǔ)言程序的基本單位是()o(2分)

A.函數(shù)

B.過程

C.子程序

D.子例程

參考答案:A

5、C語(yǔ)言中合法的字符常量是(2分)

A.'\084'

B.'\X43'

C.'ab'

D."XO"

參考答案:B

6、以下不正確的敘述是

(2分)

A.在C程序中,逗號(hào)運(yùn)算符的優(yōu)先級(jí)最低

B.在C程序中,APH和aph是兩個(gè)不同的變量

C.若a和b類型相同,在計(jì)算了賦遒表達(dá)式a二b后b中的

值將放入a中,而b中的值不變

D.當(dāng)從鍵盤輸入數(shù)據(jù)時(shí),對(duì)于整型變量只能輸入整型數(shù)值,

對(duì)于實(shí)型變量只能輸入實(shí)型數(shù)值

參考答案:D

10、在C語(yǔ)言中,運(yùn)算對(duì)象必須是整型數(shù)的運(yùn)算符是(2

分)

A.%

B.\

C.%和\

D.**

參考答案:A

13、為了避免在嵌套的條件語(yǔ)句if…else中產(chǎn)生二義性,C語(yǔ)

言規(guī)定:eIse子句總是與()配對(duì)。(2分)

A.縮排位置相同的if

B.其之前最近的if

C.其之后最近的if

D.同一行上的if

參考答案:B

14、下面程序的輸出是

main()

{intx=10,y=3;

printf("%d\n",y=x/y);}(2分)

A.0

B.1

C.3

D.不確定的值

參考答案:C

16、C語(yǔ)言的對(duì)語(yǔ)句中用作判斷的表達(dá)式一般為

(2分)

A.關(guān)系表達(dá)式

B.邏輯表達(dá)式

C.算術(shù)表達(dá)式

D.邏輯表達(dá)式和關(guān)系表達(dá)式

E.關(guān)系或邏輯表達(dá)式

參考答案:D

17、表示關(guān)系X<=Y<=Z的C語(yǔ)言表達(dá)式為.

(2分)

A.(X<=Y)&&(Y<=Z)

B.(X<=Y)AND(Y<=Z)

C.(X<二丫<二Z)

D.(X<二Y)&(Y<=Z)

參考答案:A

19、讀下列程序:

#incIude

main()

(

intx,y;

scanf(,T%d”,&x);

y二0;

if(x>=0)

{if(x>0)y=1;)

eIsey=-1;

prinff("%d'',y):)

當(dāng)從鍵盤輸入32時(shí),程序輸出結(jié)果為()。(2分)

A.0

B.1

C.-1

D.不確定

參考答案:B

20、執(zhí)行下面語(yǔ)句后的輸出為()

inti=-1;

if(i<=0)printf("****\n")

eIseprintf("%%%%\n")

(2分)

A****

B.%%%%

C.%%%%C

D.有語(yǔ)法錯(cuò),不能執(zhí)行

參考答案:D

23、b,在內(nèi)存中占個(gè)字節(jié)?!癰”在內(nèi)存中占個(gè)字

節(jié)(2分)

A.1和2

B.1

C.3

D.2

參考答案:A

24、以下描述中正確的是

(2分)

A.由于do-whiIe循環(huán)中循環(huán)體語(yǔ)句只能是一條可執(zhí)行語(yǔ)

句,所以循環(huán)體內(nèi)不能使用復(fù)合語(yǔ)句

B.do-whiIe循環(huán)由do開始,用while結(jié)束,在while(表

達(dá)式)后面不能寫分號(hào)

C.在do-whiIe循環(huán)體中,一定要有能使while后面表達(dá)

式的值變?yōu)榱悖骸凹佟保┑牟僮?/p>

D.do-whiIe循環(huán)中,根據(jù)情況可以省喀while

參考答案:C

25、對(duì)for(表達(dá)式1;;表達(dá)式3)可理解為

(2分)

A.for(表達(dá)式1;0;表達(dá)式3)

B.for(表達(dá)式1;1;表達(dá)式3)

C.for(表達(dá)式1;表達(dá)式1;表達(dá)式3)

D.for(表達(dá)式1;表達(dá)式3;表達(dá)式3)

參考答案:B

27、在c語(yǔ)言中,一維數(shù)組的定義方式為:類型說明符數(shù)組名

()o(2分)

A.[常量表達(dá)式]

B.[整型表達(dá)式]

C.[整型常量]或[整型表達(dá)式]

D.[整型常量]

參考答案:A

28、以下程序的輸出結(jié)果是

main()

{inti,x[3][3]={9,8,7,6,5,4,3,2,1):

for(i=0:i<4:i+=2)printf("%d",x[i][i]);

}(2分)

A.52

B.91

C.53

D.97

參考答案:B

29、C語(yǔ)言規(guī)定,在一個(gè)源程序中,main函數(shù)的位置(2分)

A.必須在最開始

B.必須在系統(tǒng)調(diào)用的庫(kù)函數(shù)的后面

C.可以任意

D.必須在最后

參考答案:C

31、若x為整型變量,p是指向整型數(shù)據(jù)的指針變量,則正確的

賦值表達(dá)式是()。(2分)

A.p=&x

B.p=x

C.*p=&x

D.*p二*x

參考答案:A

33、當(dāng)說明一個(gè)結(jié)構(gòu)體變量時(shí)系統(tǒng)分配紿它的內(nèi)存是

(2分)

A.各成員所需內(nèi)存量的總和

B.結(jié)構(gòu)中第一個(gè)成員所需內(nèi)存量

C.成員中占內(nèi)存量最大者所需的容量

D.結(jié)構(gòu)書最后一個(gè)成員所需內(nèi)存量

參考答案:A

34、在位運(yùn)算中,操作數(shù)每左移一位,其結(jié)果相當(dāng)于

(2分)

A.操作數(shù)乘以2

B.操作數(shù)除以2

C.操作數(shù)除以4

D.操作數(shù)乘以4

參考答案:A

35、以下敘述中錯(cuò)誤的是(2分)

A.C語(yǔ)句必須以分號(hào)結(jié)束

B.復(fù)合語(yǔ)句在語(yǔ)法上被看作一條語(yǔ)句

C.程序可以有兩個(gè)主函數(shù)

D.賦值表達(dá)式末尾加分號(hào)就構(gòu)成賦,直語(yǔ)句

參考答案:C

36、下列說法正確的是.

(2分)

A.調(diào)用函數(shù)時(shí),實(shí)參與形參可以共用內(nèi)存單元

B.調(diào)用函數(shù)時(shí),實(shí)參的個(gè)數(shù)、類型和順序與形參可以不一

C.調(diào)用函數(shù)時(shí)形參可以是表達(dá)式

D.調(diào)用函數(shù)時(shí),將為形參分配內(nèi)存單元

參考答案:D

37、返回值為void的函數(shù),其含義是.

(2分)

A.調(diào)用函數(shù)之后,被調(diào)用的函數(shù)沒有返回值

B.調(diào)用函數(shù)之后,被調(diào)用的函數(shù)不返回

C.調(diào)用函數(shù)之后,被調(diào)用的函數(shù)的返回值為任意的類型

D.以上三種說法都是錯(cuò)誤的

參考答案:A

38、C語(yǔ)言程序由函數(shù)組成。它的o

(2分)

A.主函數(shù)必須在其他函數(shù)之前,的數(shù)內(nèi)可以嵌套定義函數(shù)

B.主函數(shù)可以在其他函數(shù)之前,函數(shù)內(nèi)不可以嵌套定義函

數(shù)

C.主函數(shù)必須在其他函數(shù)之前,函數(shù)內(nèi)不可以嵌套定義函

數(shù)

D.主函數(shù)必須在其他函數(shù)之后,函數(shù)內(nèi)可以嵌套定義函數(shù)

參考答案:B

39、若調(diào)用一個(gè)函數(shù),且此函數(shù)中沒有return語(yǔ)句,則正確的

說法是:該函數(shù)

(2分)

A.沒有返回值

B.返回若干個(gè)系統(tǒng)默認(rèn)值

C.能返回一個(gè)用戶所希望的值

D.返回一個(gè)不確定的值

參考答案:D

40、以下敘述中錯(cuò)誤的是o:2分)

A.C語(yǔ)言編寫的函數(shù)源程序,其文件名后綴可以是.C

B.C語(yǔ)言編寫的函數(shù)都可以作為一個(gè)獨(dú)立的源程序文件

C.C語(yǔ)言編寫的每個(gè)函數(shù)都可以進(jìn)行獨(dú)立的編譯并執(zhí)行

D.一個(gè)C語(yǔ)言程序只能有一個(gè)主函數(shù)

參考答案:C

二程序設(shè)計(jì)題(以下3題中任選2題作答,每題10分,共20分):

1、編程序求「80所有整數(shù)的平方和并輸出結(jié)果。(10分)

參考答案:

main()

(

inti,x;

longsum=0;

for(i=l;i<=80;i++)

(

x=i*i;

sum=sum+x;

)

printfsum);

)

參考答案:173880

2、編程序統(tǒng)計(jì)300~500能被3整除的個(gè)數(shù)。(10分)

參考答案:

main()

(

inta;

inti=0;

for(a=300;a<=500;a++)

(

if(a%3==0)

i=i+1;

)

printf(〃%d〃,i);

參考答案是:67

。單選題:(每題2分,共80分)

1、以下選項(xiàng)中合法的用戶標(biāo)識(shí)符是()(2分)

A.int

B.a#

C.5mem

D._243

參考答案:D

2、C程序是()

(2分)

A.順序執(zhí)行

B.從main函數(shù)開始

C.從函數(shù)體開始

D.任意語(yǔ)句

參考答案:B

5、假設(shè)所有變量均為整型,則表達(dá)式(a=2,b=5,b++,a+b)的值是

(2分)

A.7

B.8

C.6

D.2

參考答案:B

6、C語(yǔ)言中運(yùn)算對(duì)象必須是整型的運(yùn)算符是

(2分)

A.%二

B./

C.=

D.〈二

參考答案:A

7、若有以下程序段,

intd=1,c2=2,c3;

c3=1.0/c2*d;

則執(zhí)行后,c3中的值是

(2分)

A.0

B.0.5

C.1

D.2

參考答案:A

16、若有條件表達(dá)式(exp)?a++:b--,則以下表達(dá)式中能完全等

價(jià)于表達(dá)式(exp)的是

(2分)

A.(exp==0)

B.(exp!=0)

C.(exp==1)

D.(exp!=1)

參考答案:B

18、下面的程序是

main()

{intx=3,y=0,z=0;

if(x==y+z)printf("****");

eIseprintf("####");

1(2分)

A.有語(yǔ)法錯(cuò)誤不能過通過編譯

B.輸出*x**

C.可能通過編譯,但是不能通過連接,因而不能運(yùn)行

D.輸出####

參考答案:D

21、有以下程序段

intk二0

while(k=1)k<+;

whiIe循環(huán)執(zhí)行的次數(shù)是

(2分)

A.無(wú)限次

B.有語(yǔ)法錯(cuò),不能執(zhí)行

C.一次也不執(zhí)行

D.執(zhí)行1次

參考答案:A

22、C語(yǔ)言中while和do-whiIe循環(huán)的主要區(qū)別是

(2分)

A.do-whiIe的循環(huán)體至少無(wú)條件執(zhí)行一次

B.while的循環(huán)控制條件比do-whiIe的循環(huán)控制條件更嚴(yán)

C.do-whiIe允許從外部轉(zhuǎn)到循環(huán)體內(nèi)

D.do-whiIe的循環(huán)體不能是復(fù)合語(yǔ)句

參考答案:A

27、若有以下語(yǔ)句,則正確的描述是()。

charx□二”12345”;

chary□:{‘1','2','3','4','5'};(2分)

A.x數(shù)組和v數(shù)組的長(zhǎng)度相同

B.x數(shù)組長(zhǎng)度大于y數(shù)組長(zhǎng)度

C.x數(shù)組長(zhǎng)度小于y數(shù)組長(zhǎng)度

D.x數(shù)組等價(jià)于v數(shù)組

參考答案:B

30、以下程序中調(diào)用scanf函數(shù)給變量a揄入數(shù)值的方法是錯(cuò)誤

的,其錯(cuò)誤原因是

main()

P=&a;

printf("inputa:;

scanf("%d",*p);

(2分)

A.*p表示的是指針變量p的地址

B.*p表示的是變量a的值,而不是變量a的地址

C.*p表示的是指針變量p的值

D.*p只能用來說明p是一個(gè)指針變量

參考答案:B

33、表達(dá)式:10!=9的值是一(2分)

A.true

B.非零值

C.0

D.1

參考答案:D

39、C語(yǔ)言中的標(biāo)識(shí)符只能由字母,數(shù)字和下劃線三種字符組成,

且第一個(gè)字符

(2分)

A.必須為字母

B.必須為下劃線

C.必須為字母或下劃線

D.可以是字母,數(shù)字和下劃線中任一字符

參考答案:C

□程序設(shè)計(jì)題(以下3題中任選2題作答,每題10分,共20分):

1、編程序求1+3+5+7+9+…這樣的數(shù)之和。如果累加數(shù)大于750

時(shí),則程序終止并輸出結(jié)果。(10分)

參考答案:

main()

inti=l,sum=0;

while(sum<=750)

{

sum=sum+i;

i=i+2;

)

printf(〃\n%d”,sum);

)

參考答案:784

2、編程序求「600能被11整除的個(gè)數(shù)。(10分)

參考答案:

main()

(

inti,sum=0;

for(i=l;i<=600;i++)

if(i%ll==0)

sum=sum+1;

printf(〃\n%d”,sum);

}

參考答案:54

3、編寫程序,要求從鍵盤輸入一個(gè)三位數(shù),判斷其是否為水仙

花數(shù)。(水仙花數(shù)是指一個(gè)三位數(shù),它的各位數(shù)字的立方和等于

其本身。)(10分)

參考答案:

voidmain()

(

intx;

inta,b,c;//a,b,c分別表示x的個(gè)位十位和百位

printf("pleaseinputainteger/');

scanf(〃%d〃,&x);

a=x%10;

b=x/10%10;

c=x/100;

if(a*a*a+b*b^b+c*c*c==x)

printf("%d是水仙花數(shù)\n〃,x);

else

printf(z,%d不是水仙花數(shù)\n〃,x);

。單選題:(每題2分,共80分)

2、C語(yǔ)言規(guī)定:在一個(gè)源程序中,main。函數(shù)的位置()(2

分)

A.必須在最開始

B.必須在系統(tǒng)調(diào)用的庫(kù)函數(shù)的后面

C.可以任意

D.必須在最后

參考答案:C

4、x、v、z被定義為int型變量,若從鍵盤給x、v、z揄入數(shù)

據(jù),正確的輸入語(yǔ)句是

(2分)

A.INPUTx、v、z;

B.scanf「%d%d%d”,&x,&y,&z);

C.scanf;"%d%d%d",x,y,z);

D.read("%d%d%d",&x,&y,&z);

參考答案:B

9、以下程序的輸出結(jié)果是

main()

{inta=-1,b=4,k;

k=(++a<0)&&!;b-<=0);

printf("%d%d%d\n",k,a,b);

)

(2分)

A.104

B.103

C.003

D.004

參考答案:D

10、表達(dá)式:10!=9的值是—

(2分)

A.true

B.非零值

C.0

D.1

參考答案:D

12、設(shè)x和y均為int型變量,則以下語(yǔ)句:x+=y;y=x-y;x-=y;

的功能是.

(2分)

A.把x和y按從大到小排列

B.把x和y按從小到大排列

C.無(wú)確定結(jié)果

D.交換x和y中的值

參考答案:D

13、有如下程序

main()

(

inty=3,x=3,z=1;

printf("%d%d\n",(++x,y++),z+2);

1

運(yùn)行該程序的埔出結(jié)果是

(2分)

A.34

B.42

C.43

D.33

參考答案:D

14、設(shè)正x、y均為整型變量,且x=10y二3,則以下語(yǔ)句的輸出

結(jié)果是

printf("%d,%d\n",x-,―y);(2分)

A.10,3

B.9,3

C.9,2

D.10,2

參考答案:D

16、設(shè)a、b、C、d、m、n均為int型變量,且a=5、b二6、c二7、

d二8、m=2、n=2,

則邏輯表達(dá)式:m=a>b)&&(n=c>d)運(yùn)算后,n的值為:

(2分)

A.0

B.1

C.2

D.3

參考答案:C

28、若有以下定義和語(yǔ)句:

inta[10]={1,2,3,4,5,6,7,8,9/0},p=a;

則不能表示a數(shù)組元素的表達(dá)式是()

(2分)

A.p⑸

B.a[10]

C.a[5]

D.aLp-aJ

參考答案:B

30、以下程序的輸出結(jié)果為()。

#incIude

#defineSQR(x)x*x.

main()

inta,k=3;

a=SQR(k+1);

printf(n%d\n",a);

1(2分)

A.6

B.10

C.8

D.7

參考答案:D

34、sizeof(

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論