二級(jí)c語(yǔ)言筆試練習(xí)題_第1頁(yè)
二級(jí)c語(yǔ)言筆試練習(xí)題_第2頁(yè)
二級(jí)c語(yǔ)言筆試練習(xí)題_第3頁(yè)
二級(jí)c語(yǔ)言筆試練習(xí)題_第4頁(yè)
二級(jí)c語(yǔ)言筆試練習(xí)題_第5頁(yè)
已閱讀5頁(yè),還剩96頁(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)介

全國(guó)計(jì)算機(jī)等級(jí)考試

二級(jí)C語(yǔ)言程序設(shè)計(jì)

第1章C語(yǔ)言程序設(shè)計(jì)概述.....................................................1

第2章C語(yǔ)言的基本數(shù)據(jù)類型與表達(dá)式..........................................3

第3章順序程序設(shè)計(jì)..........................................................11

第4章選擇結(jié)構(gòu)程序設(shè)計(jì)......................................................13

第5章循環(huán)結(jié)構(gòu)..............................................................18

第6章函數(shù)與編譯預(yù)處理......................................................24

第7章數(shù)組..................................................................34

第8章指針..................................................................42

第9章結(jié)構(gòu)體數(shù)據(jù)類型與鏈表.................................................57

第10章位運(yùn)算與文件操作....................................................64

上機(jī)考試題......................................................................71

目錄

第1章C語(yǔ)言程序設(shè)計(jì)概述第7章數(shù)組

1.1程序與程序設(shè)計(jì)7.1一維數(shù)組

1.2算法及其描述7.2二維數(shù)組

1.3C語(yǔ)言的發(fā)展及特點(diǎn)7.3數(shù)組的應(yīng)用

1.4C語(yǔ)言程序的基本結(jié)構(gòu)7.4字符數(shù)組與字符串

1.5C語(yǔ)言字符集、標(biāo)識(shí)符和關(guān)鍵字7.5數(shù)組作為函數(shù)的參數(shù)

1.6C語(yǔ)言程序的開(kāi)發(fā)環(huán)境7.6程序舉例

第2章C語(yǔ)言的基本數(shù)據(jù)類型第8章指針

與表達(dá)式8.1指針與指針變量

2.1C語(yǔ)言的基本數(shù)據(jù)類型8.2指針與函數(shù)

2.2常量和變量8.3指針與數(shù)組

2.3運(yùn)算符與表達(dá)式8.4指針與字符串

2.4數(shù)據(jù)類型轉(zhuǎn)換8.5指針數(shù)組與命令行參數(shù)

8.6程序舉例

第3章順序程序設(shè)計(jì)

3.1C語(yǔ)言的基本語(yǔ)句第9章結(jié)構(gòu)體數(shù)據(jù)類型與鏈表

3.2數(shù)據(jù)輸入與輸出9.1結(jié)構(gòu)體類型的定義

3.3程序舉例9.2結(jié)構(gòu)體類型變量

9.3結(jié)構(gòu)體類型數(shù)組

第4章選擇結(jié)構(gòu)程序設(shè)計(jì)9.4結(jié)構(gòu)體類型指針

4.1關(guān)系運(yùn)算符與關(guān)系表達(dá)式9.5結(jié)構(gòu)體與函數(shù)

4.2邏輯運(yùn)算符與邏輯表達(dá)式9.6鏈表

4.3if語(yǔ)句

4.4switch語(yǔ)句第10章位運(yùn)算與文件操作

10.1位運(yùn)算與位運(yùn)算符

第5章循環(huán)結(jié)構(gòu)10.2位運(yùn)算舉例

5.1while語(yǔ)句10.3C文件概述

5.2do-while語(yǔ)句10.4文件類型指針

5.3for語(yǔ)句10.5文件的打開(kāi)與關(guān)閉

5.4break>continue和goto語(yǔ)句10.6文件的定位

5.5循環(huán)的嵌套

5.6復(fù)合結(jié)構(gòu)程序舉例第11章上機(jī)考試題分析

第6章函數(shù)與編譯預(yù)處理

6.1模塊化程序設(shè)計(jì)與函數(shù)

6.2函數(shù)的定義與調(diào)用

6.3函數(shù)的遞歸調(diào)用

6.4變量的作用域與存儲(chǔ)方式

6.5編譯預(yù)處理

第1?C錯(cuò)言程聲鉞什概述

第1章C語(yǔ)言程序設(shè)計(jì)概述

一、選擇題

1、以下敘述中正確的是

A)C語(yǔ)言比其他語(yǔ)言高級(jí)

B)C語(yǔ)言可以不用編譯就能被計(jì)算機(jī)識(shí)別執(zhí)行

C)C語(yǔ)言以接近英語(yǔ)國(guó)家的自然語(yǔ)言和數(shù)學(xué)語(yǔ)言作為語(yǔ)言的表達(dá)形式

D)C語(yǔ)言出現(xiàn)的最晚,具有其他語(yǔ)言的一切優(yōu)點(diǎn)

2、以下說(shuō)法正確的是

A)C語(yǔ)言程序總是從第一個(gè)的函數(shù)開(kāi)始執(zhí)行

B)在C語(yǔ)言程序中,要調(diào)用函數(shù)必須在main()函數(shù)中定義

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

D)C語(yǔ)言程序中的main()函數(shù)必須放在程序的開(kāi)始部分

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

A)必須在最開(kāi)始B)必須在系統(tǒng)調(diào)用的庫(kù)函數(shù)的后面

C)可以任意D)必須在最后

4、以下敘述不正確的是

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

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

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

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

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

A)程序行B)語(yǔ)句

C)函數(shù)D)字符

6、以下敘述正確的是

A)在C程序中,每行中只能寫一條語(yǔ)句

B)若a是實(shí)型變量,C程序中允許賦值a=10,因此實(shí)型變量中允許存放整型數(shù)

C)在C程序中,無(wú)論是整數(shù)還是實(shí)數(shù),都能被準(zhǔn)確無(wú)誤地表示

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

7、以下選項(xiàng)錯(cuò)誤的是

A)main()B)main()

{intx,y,z;{intx,y,z;

x=0;y=x-l;x=O,y=x+l;

z=x+y;}z=x+y;}

C)main()

D)main()

{intx;int

{intx,y,z;

inty;

x=O;y=x+l;

x=O,y=x+l;

z=x+y;}z=x+y,}

1仔細(xì)答題,認(rèn)真總結(jié)!二級(jí)考試專用

第1*C語(yǔ)言程序強(qiáng)針概述

8、以下4個(gè)選項(xiàng)中,不能看做一條語(yǔ)句的是

A);B)a=5,b=2.5,c=3.6;

C)if(a<5);D)if(b!=5)x=2;y=6;

9、字符型數(shù)據(jù)在機(jī)器中是用ASCH碼表示的,字符“5”和“7”在機(jī)器中表示為

A)10100011和01110111B)01000101W01100011

C)00110101^00110111D)01100101和01100111

二、填空題

1、用高級(jí)語(yǔ)言編寫的程序稱為【】程序,它可以通過(guò)解釋程序翻譯?句執(zhí)行一句的方式

執(zhí)行,也可以通過(guò)編譯程序一次翻譯產(chǎn)生目標(biāo)程序,然后執(zhí)行。

2、C語(yǔ)言程序的注釋可以出現(xiàn)在程序中的任何地方,一個(gè)注釋以【】作為開(kāi)始和結(jié)束。

三、部分填空題解析

2、解析:C語(yǔ)言程序的注釋可以出現(xiàn)在程序基本單詞之間的任何地方,C語(yǔ)言程序的注釋以'

/*'作為開(kāi)始標(biāo)記,并以'*/'作為結(jié)束標(biāo)記。

仔細(xì)答題,認(rèn)真總結(jié)!二級(jí)考試專用2

第2*C語(yǔ)言的基聲裁據(jù)類型?&表達(dá)K

第2章C語(yǔ)言的基本數(shù)據(jù)類型與

表達(dá)式

一、選擇題

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

A)整型、實(shí)型、邏輯型B)整型、實(shí)型、字符型

C)整型、字符型、邏輯型D)字符型、實(shí)型、邏輯型

2、下列各數(shù)據(jù)類型不屬于構(gòu)造類型的是

A)枚舉型B)共用型

C)結(jié)構(gòu)型D)數(shù)組型

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

A)必須為字母B)必須為下劃線

C)必須為字母或下劃線D)可以是字母,數(shù)字和下劃線中任一字符

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

A)void,define,WORDB)a3_b3,_123,Car

C)For,-abc,IFCaseD)2a,DO,sizeof

5、請(qǐng)選出可用作C語(yǔ)言用戶標(biāo)識(shí)符的是

A)void,define,WORDB)a3_b3,_123,IF

C)FOR,—abc,CaseD)2a,Do,Sizeof

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

A)longB)_2Test

C)3DmaxD)A.dat

7、下列是用戶自定義標(biāo)識(shí)符的是

A)_wlB)3_xy

C)intD)LINE-3

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

A)AP_0doB)floatlaO_A

C)b-agotointD)_123tempint

9、下面四個(gè)選項(xiàng)中,均是合法整型常量的選項(xiàng)是

A)160-Oxffff011B)-OxcdfOlaOxe

C)-01986,0120668D)-0x48a2e5Ox

10、下面四個(gè)選項(xiàng)中,均是不正確的8進(jìn)制數(shù)或16進(jìn)制數(shù)的選項(xiàng)是

A)016Ox8f018B)Oabc017Oxa

C)010-0x110x16D)0al27ff-123

3仔細(xì)答題,認(rèn)真總結(jié)!二級(jí)考試專用

第2*C語(yǔ)言的基聲裁據(jù)類型?&表達(dá)K

11、下列數(shù)據(jù)中,不合法的C語(yǔ)言實(shí)型數(shù)據(jù)的是

A)0.123B)123e3

C)2.1e3.5D)789.0

12、在C語(yǔ)言中,退格符是

A)\nB)\t

C)\fD)\b

13、下列用于printf函數(shù)的控制字符常量中,代表“豎向跳格”的轉(zhuǎn)義字符常量是

A)\bB)\t

C)\vD)\f

14、若有說(shuō)明語(yǔ)句:charc='\72';則變量c

A)包含1個(gè)字符B)包含2個(gè)字符

C)包含3個(gè)字符D)說(shuō)明不合法,c的值不確定

15、在C語(yǔ)言中,char型數(shù)據(jù)在內(nèi)存中的存儲(chǔ)形式是

A)補(bǔ)碼B)反碼

C)原碼D)ASCH碼

16、若變量已正確定義并賦值,以下符合C語(yǔ)言語(yǔ)法的表達(dá)式是

A)a:=b+lB)a=b=c+2

C)int18.5%3D)a=a+7=c+b

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

A)a==1B)++i;

C)a=a++=5:D)a=int(i);

18、在16位C編譯系統(tǒng)上,若定義longa;,則能給a賦40000的正確語(yǔ)句是

A)a=20000+20000;B)a=4000*10;

C)a=30000+10000;D)a=4000L*10L

19、若運(yùn)行時(shí)給變量x輸入12,則以下程序的運(yùn)行結(jié)果是

main()

{intx,y;

scanf("%d",&x);

y=x>12?x+10:x-12;

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

)

A)0B)22

C)12D)10

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

A)%B)\

C)%和\D)**

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

A)%=B)/

仔細(xì)答題,認(rèn)真總結(jié)!二級(jí)考試專用4

第2章C轄言的基洋毅據(jù)奏型易表達(dá)W

C)=D)<=

22、已知各變量的類型說(shuō)明如下:

intk,a,b;

unsignedlongw=5;

doublex=1.42;

則以下不符合c語(yǔ)言語(yǔ)法的表達(dá)式是

A)x%(-3)B)w+=-2

C)k=(a=2,b=3,a+b)D)a+=a-=(b=4)*(a=3)

23、若有定義:inta=7;floatx=2.5,y=4.7;則表達(dá)式x+a%3*(int)(x+y)%2/4的值是

A)2.500000B)2.750000

C)3.500000D)0.000000

24、請(qǐng)選出以下語(yǔ)句的輸出結(jié)果

printf("%d\n”,strlen("\t\"\065\xff\n"));

A)5B)14

C)8D)輸出項(xiàng)不合法,無(wú)正常輸出

25、設(shè)有數(shù)組定義:chararray口="China";則數(shù)組array所占的空間為

A)4個(gè)字節(jié)B)5個(gè)字節(jié)

C)6個(gè)字節(jié)D)7個(gè)字節(jié)

26、以下不正確的敘述是

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ù)值

27、sizeof(float)是

A)一個(gè)雙精度型表達(dá)式B)一個(gè)整型表達(dá)式

C)一種函數(shù)調(diào)用D)一個(gè)不合法的表達(dá)式

28、若x,i,j和k都是int型變量,則計(jì)算表達(dá)式x=(i=4,j=16,k=32)后,x的值為

A)4B)16

C)32D)52

29、下列程序的輸出結(jié)果是

main()

{doubled=3.2;intx,y;

x=1.2;y=(x+3.8)/5.0;

printf("%d\n”,d*y);

)

A)3B)3.2

C)0D)3.07

30、設(shè)變量a是int型,f是float型,i是double型,則表達(dá)式10+'a'+i*f值的數(shù)據(jù)類型為

A)intB)float

5仔細(xì)答題,認(rèn)真總結(jié)!二級(jí)考試專用

第2*C語(yǔ)言的基漳裁據(jù)類型與表達(dá)K

、C)doubleD)不確定

31、設(shè)以卜變量均為int類型,表達(dá)式的值不為7的是

A)(x=y=6,x+y,x+1)B)(x=y=6,x+y,y+l)

C)(x=6,x+1,y=6,x+y)D)(y=6,y+1,x=y,x+1)

32、若有條件表達(dá)式(exp)?a++:b-,則以下表達(dá)式中能完全等價(jià)于表達(dá)式(exp)的是

A)(exp==0)B)(exp!=0)

C)(exp==l)D)(exp!=l)

33、以下選項(xiàng)中,與k=n++完全等價(jià)的表達(dá)式是

A)k=n,n=n+lB)n=n+1,k=n

C)k=++nD)k+=n+1

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

main()

{inta=21,b=11;

printf("%d\n",-a+b,—b+a);

A)30B)31

C)32D)33

35、設(shè)x、y均為整型變量,且x=10y=3,則以下語(yǔ)句的輸出結(jié)果是

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

A)10,3B)9,3

C)9,2D)10,2

36、表達(dá)式a<bll(c&d)中運(yùn)算符優(yōu)先級(jí)最高的是

A)IIB)&

C)<D)()

37、在C語(yǔ)言中,int,char和short三種類型數(shù)據(jù)在內(nèi)存中所占用的字節(jié)數(shù)

A)由用戶自己定義B)均為2個(gè)字節(jié)

C)是任意的D)由所用機(jī)器的機(jī)器字長(zhǎng)決定

38、若有以下定義,則能使值為3的表達(dá)式是

intk=7,x=12;

A)x%=(k%=5)B)x%=(k-k%5)

C)x%=k-k%5D)(x%=k)-(k%=5)

39、下面程序的輸出結(jié)果為

main()

{inta,b;b=(a=3*5,a*4,a*5);

printf("%d",b);}

A)60B)75

C)65D)無(wú)確定值

40、假定x和y為double型,則表達(dá)式x=2,y=x+3/2的值是

A)3.500000B)3

仔細(xì)答題,認(rèn)真總結(jié)!二級(jí)考試專用6

第2章C語(yǔ)言的基漳敏提奏型星表達(dá)W

C)2.000000D)3.000000

41、以下變量x,y,z均為double類型且已正確賦值,不能正確表示數(shù)學(xué)式子x+y+z的C語(yǔ)

言表達(dá)式是

A)x/y*zB)x*(1/(y*z))

C)x/y*l/zD)x/y/z

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

main()

{charc='z';

printf("%c”,c-25);

)

A)aB)Z

C)z-25D)y

43、有以下程序

#include<string.h>

main()

{char*p="abcde\Ofghjik\0

printf(0%d\nH,strlen(p));

)

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

A)12B)15

C)6D)5

44、設(shè)有intx=U;則表達(dá)式(x++*l/3)的值是

A)3B)4

C)11D)12

45、若變量a是int類型,并執(zhí)行了語(yǔ)句:a='A'+16,則正確的敘述是

A)a的值是字符CB)a的值是浮點(diǎn)型

C)不允許字符型和浮點(diǎn)型相加D)a的值是字符'A'的ASCH值加上1

46、下列程序運(yùn)行的結(jié)果是

main()

{floatx;

inti;

x=3.6;

i=(int)x;

printf("x=%f,i=%d”,x,i);

)

A)x=3.600000,i=3B)x=3.6,i=3

C)x=3,i=3D)x=3.600000,i=3.000000

二、填空題

1、在C語(yǔ)言中(以16位PC機(jī)為例),一個(gè)float型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為4;一個(gè)double

型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為【1

7仔細(xì)答題,認(rèn)真總結(jié)!二級(jí)考試專用

第2章C語(yǔ)者的基中於據(jù)類型易表達(dá)K

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

main()

{inti=010,j=10;

pirntf(z,%d,%d\n,z,i,j);

)

3、已知字母a的ASCH碼為十進(jìn)制數(shù)97,且設(shè)ch為字符型變量,則表達(dá)式ch='a/+'8'-'

3'的值為【】。

4、下列程序的輸出結(jié)果為【】。

main()

(intx=3,y=5;

printf('%d”,x=(x-)*(-y));

)

5、設(shè)y是int型,請(qǐng)寫出y為奇數(shù)的關(guān)系表達(dá)式【10

6^設(shè)inta=5,b=6,表達(dá)式(++a==b―)?++a:―b的值是【】。

7、以下程序的輸出結(jié)果是“】。

main()

{inta=0;

a+=(a=8);

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

8、在計(jì)算機(jī)中,字符的比較是對(duì)它們的進(jìn)行比較。

9、在內(nèi)存中,存儲(chǔ)字符'xz要占用1個(gè)字節(jié),存儲(chǔ)字符串〃X"要占用【】個(gè)字節(jié)。

10、下列程序的輸出結(jié)果是16.00,請(qǐng)?zhí)羁铡?/p>

main()

{inta=9,b=2;

floatx=[},y=l.1,z;

z=a/2+b*x/y+l/2;

printf(〃%5.2f\n〃,z);

)

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

main()

{inta=2,b=3,c=4;

a*=16+(b++)-(++c);

printf(〃%d〃,a);

)

12、以下程序段的輸出結(jié)果是“】o

intx=17,y=26;

printf(〃%d〃,y/=(x%=6));

仔細(xì)答題,認(rèn)真總結(jié)!二級(jí)考試專用8

第2章C轄言的基漳毅據(jù)奏型易表達(dá)W

13、將以下程序?qū)懗扇窟\(yùn)算表達(dá)式是“】o

if(a>b)max=a;

elsemax=b;

14、下列y的值是【】。

inty;y=sizeof(2.25*4);

15、下列x的值是【】。

intx;x=sizeof2.25*4;

16、設(shè)x和y均為int型變量,且x=l,y=2,則表達(dá)式double(1+x/y)的值為【】。

17、把數(shù)學(xué)表達(dá)式m-n改寫成C語(yǔ)言的表達(dá)式是【】。

18、若有以下定義:

chara;intb;

floatc;doubled;

則表達(dá)式a*b+d-c值的類型為1】o

19、若有以下程序段:

intcl=l,c2=2tc3;

c3=l.0/c2*cl;

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

三、部分填空題解析

2、解析:以0開(kāi)頭的是八進(jìn)制數(shù)。

3、解析:在C語(yǔ)言中,整型,實(shí)型,字符型數(shù)據(jù)間可以混合運(yùn)算,在進(jìn)行運(yùn)算時(shí),不同類

型的數(shù)據(jù)要先轉(zhuǎn)換成同一類型,然后再進(jìn)行運(yùn)算。我們可以這樣計(jì)算本題,97+8-3=102,即

102所對(duì)應(yīng)的字母為f。

4、解析:X—的值為3,一y的值為4;注意前綴一和后綴一的區(qū)別。

8、解析:C語(yǔ)言中,字符也可以進(jìn)行比較運(yùn)算,且是按照ASCH碼值進(jìn)行的。

9、計(jì)算機(jī)存儲(chǔ)一個(gè)字符用1個(gè)字節(jié),存儲(chǔ)字符串時(shí),每個(gè)字符用占用1個(gè)字節(jié),另在字符串

的有效字符之后存儲(chǔ)1個(gè)字符串的結(jié)束標(biāo)記符。所以存儲(chǔ)字符串“X”要占用2個(gè)字節(jié),存儲(chǔ)

字符'x'只要1個(gè)字節(jié)。

10、解析:本題最后一條語(yǔ)句,表示以浮點(diǎn)格式輸出z的值,寬度為5,其中所含2位小數(shù),

應(yīng)該注意的是,兩個(gè)整型運(yùn)算結(jié)果仍為整型,如1/2的結(jié)果為0,對(duì)本題可逐步求解:

16.00=9/2+2*x/l.1+1/2

16.00=4+2*x/l.1+0

12.00=2*x/l.1

所以,x的值為6.6。

11、解析:a*=16+(b++)-(++c)等價(jià)于a=a*(16+(b++)-(++c)),b++的值為3,++c

9仔細(xì)答題,認(rèn)真總結(jié)!二級(jí)考試專用

第2*C語(yǔ)言的基洋裁據(jù)類型?&表達(dá)K

的值為5,請(qǐng)注意前綴++和后綴++的用法。

12、解析:%是取余運(yùn)算,操作數(shù)為整型,所以最后的結(jié)果也為整型,運(yùn)算過(guò)程如下:

y/=(x%-6);

y/=(x=x%6);

y/=5;

y=y/5;y=5;

13、解析:本題考查三目運(yùn)算符的用法,條件運(yùn)算符要求有三個(gè)操作對(duì)象,稱三目(元)

運(yùn)算符,它是C語(yǔ)言中惟一的一個(gè)三目運(yùn)算符。條件表達(dá)式的一般形式為:表達(dá)式1?表達(dá)式

2:表達(dá)式3所以,我們可以寫成(a>b)?a:b,它是一個(gè)“條件表達(dá)式"。執(zhí)行順序是:如

果(a>b)條件為真,則條件表達(dá)式取值a,否則取值b。

14、解析:sizeof(2.25*4)為sizeof(10.00)值為8,C語(yǔ)言規(guī)定浮點(diǎn)型常量當(dāng)雙

精度處理(以IBM-PC機(jī)為例)。

15、解析:sizeof運(yùn)算符高于算術(shù)運(yùn)算符,所以sizeof2.25*4等價(jià)于(sizeof2.25)*4

為8X4=32(以IBM-PC機(jī)為例)。

16、解析:本題考查兩個(gè)知識(shí)點(diǎn)?是x/y的值為整型即為0,二是數(shù)字1存放在double中是

double類型。

18、解析:C語(yǔ)言中,如果運(yùn)算符兩邊的數(shù)據(jù)類型不同,將進(jìn)行類型轉(zhuǎn)換,根據(jù)轉(zhuǎn)換規(guī)則,

短整型轉(zhuǎn)為長(zhǎng)整型;整型轉(zhuǎn)換為實(shí)型。

19、解析:在賦值運(yùn)算中,如果表達(dá)式中變量和常量的數(shù)據(jù)類型不一致就會(huì)自動(dòng)進(jìn)行類型

轉(zhuǎn)換。系統(tǒng)會(huì)計(jì)算L0/c2,由于1.0是實(shí)型,所以均先轉(zhuǎn)化為雙精度型0.500000,再和cl轉(zhuǎn)

化后的雙精度數(shù)相乘得0.500000。但其要賦值給整型變量c3,故要進(jìn)行強(qiáng)制轉(zhuǎn)換,c3的值為0。

仔細(xì)答題,認(rèn)真總結(jié)!二級(jí)考試專用10

第3*喉方程聲錢什

第3章順序程序設(shè)計(jì)

一、選擇題

1、結(jié)構(gòu)化程序所規(guī)定的三種最基本控制結(jié)構(gòu)是

A)輸入、處理、輸出B)樹(shù)形、網(wǎng)形、環(huán)形

C)順序、選擇、循環(huán)D)主程序、子程序、函數(shù)

2、若說(shuō)明int*p,n;則通過(guò)語(yǔ)句scanf能夠正確讀入數(shù)據(jù)的程序段是

A)p=&n;scanf("%d",&p);B)p=&n;scanf("%d",*p);

C)scanf("%d",n);D)p=&n;scanf("%d",p);

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

inta=1234;

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

A)12B)34

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

4、已有定義inta=-2;和輸出語(yǔ)句printf("%81x",a);以下正確的敘述是

A)整型變量的輸出形式只有%d一種

B)%x是格式符的一種,它可以適用于任何?種類型的數(shù)據(jù)

C)%x是格式符的?種,其變量的值按十六進(jìn)制輸出,但%81x是錯(cuò)誤的

D)%81x不是錯(cuò)誤的格式符,其中數(shù)字8規(guī)定了輸出字段的寬度

5、對(duì)下面程序描述正確的一項(xiàng)是(每行程序前面的數(shù)字表示行號(hào))

1main()

2(

3floata[3]={0.0};

4inti;

5for(i=0;i<3;i++)scanf("%d",&a[i]);

6for(i=l;i<3;i++)a[0]=a[0]+aLi];

7printf("%f\n",a[0]);

8)

A)沒(méi)有錯(cuò)誤B)第3行有錯(cuò)誤

C)第5行有錯(cuò)誤D)第7行有錯(cuò)誤

6、若變量已正確說(shuō)明為int類型,要通過(guò)語(yǔ)句scanf("%d%d%d”,&a,&b,&c);給2賦值3,b

賦值5,c賦值8,正確的輸入形式是

A)3c回車〉

5〈回車>

8c回車〉

B)3,5,8<回車)

C)3V回車〉

58〈回車>

D)35c回車〉

8〈回車>

II仔細(xì)答題,認(rèn)真總結(jié)!二級(jí)考試專用

第3*艱本在再?gòu)?qiáng)什

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

main()

{int*p,*q,a,b;

p=&a;

printf("inputa:u);

scanf("%d",*p);

)

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

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

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

D)*p只能用來(lái)說(shuō)明p是一個(gè)指針變量

8、x,y,z被定義為int型變量,若從鍵盤給x,y,z輸入數(shù)據(jù),正確的輸入語(yǔ)句是

A)INPUTx、y、z;

B)scanf(n%d%d%dM,&x,&y,&z);

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

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

9、執(zhí)行下列程序時(shí)輸入:123〈空格>456(空格>789〈回車〉輸出結(jié)果是

main()

{chars[100];intc,i;

scanf("%c”,&c);scanf(n%d",&i);scanf("%s",s);

printf("%c,%d,%s\nn,c,i,s);}

A)123,456,789B)1,456,789

C)1,23,456,789D)1,23,456

二、填空題

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

inta=1234;

printf(u%2d\nu,a);

仔細(xì)答題,認(rèn)真總結(jié)!二級(jí)考試專用12

第4*送考修構(gòu)程再鉞計(jì)

第4章選擇結(jié)構(gòu)程序設(shè)計(jì)

一、選擇題

1、在C程序中,判邏輯值時(shí)、用“非(T表示邏輯值“真'又用"0"表示邏輯值“假”。在求邏

輯值時(shí),用()表示邏輯表達(dá)式值為“真、又用()表示邏輯表達(dá)式值為“假乙

A)10B)01

C)非0非0D)11

2、有如下程序段

inta=14,b=15,x;

charc=zA';

x=(a&&b)&&(cv'B');

3、執(zhí)行該程序段后,x的值為

A)tureB)false

C)0D)1

4、若運(yùn)行以下程序時(shí),從鍵盤輸入ADescriptor<CR>(vCR>表示回車),則下面程序的運(yùn)

行結(jié)果是#足4鼠?<stdio.h>

main()

{chare;

intv0=l,vl=0,v2=0;

do{switch(c=getchar())

{case'a':case'A’:

case'e':case'E’:

case'i':case'I’:

case'o':caseO':

case1u':case'U':vl+=l;

default:vO+=1;v2+=1;}

}while(c!=z\nr);

printf(uv0=%d,v1=%d,v2=%d\nn,v0,v1,v2);}

A)v0=7,vl=4,v2=7B)v0=8,vl=4,v2=8

C)v0=ll,vl=4,v2=llD)v0=13,vl=4,v2=12

5、有如下程序

main()

{floatx=2.0,y;

if(x<0.0)y=0.0;

elseif(x>10.0)y=1.0/x;

elsey=1.0;

printf(u%f\n",y);}

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

A)0.000000B)0.250000

C)0.500000D)1.000000

6、能正確表示邏輯關(guān)系:“a210或aWO”的C語(yǔ)言表達(dá)式是

13仔細(xì)答題,認(rèn)真總結(jié)!二級(jí)考試專用

第4本達(dá)舞修構(gòu)程再效計(jì)

A)a>=10ora<=0B)a>=0la<=10

C)a>=10&&a<=0D)a>=10IIa<=0

7、有如下程序

main()

{inta=2,b=-l,c=2;

if(a<b)

if(b<0)c=0;

elseC++;

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

)

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

A)0B)1

C)2D)3

8、若變量c為char類型,能正確判斷出c為小寫字母的表達(dá)式是

A)'a'<=c<='z'

B)(c>=,a')II(c<=zz')

C)('a'<=c)and('z'>=c)

D)(c>=za')&&(cv='z')

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

A)'A'<=cl<=,Z'

B)(cl>=A)&&(cl<=Z)

C)('A'>=cl)II(zZ'<=cl)

D)Cc\>=A')&&(cl<='Z')

10、下列函數(shù)的運(yùn)行結(jié)果是

main()intf(inta,intb)

{inti=2,p;{intc;

intj,k;if(a>b)c=l;

j=i;elseif(a==b)c=0;

k=++i;elsec=-l;

p=f(j,k);return(c);

u

printf(%d",p);)

11、設(shè)x,y和z都是int型變量,且x=3,y=4,z=5,則下面表達(dá)式中,值為0的表達(dá)式是

A)x&&yB)x<=y

C)xll++y&&y-zD)!(x<y&&!zlll)

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

main()

{inta,i;a=0;

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

{switch(i)

{case0:

case3:a+=2;

case1:

仔細(xì)答題,認(rèn)真總結(jié)!二級(jí)考試專用14

第4本達(dá)喬修構(gòu)程再領(lǐng)針

case2:a+=3;

default:a+=5;

)

Jprintf(n%d\nn,a);

)

A)31B)13

C)10D)20

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

main()

{inta=4,b=5,c=0,d;

d=!a&&!bll!c;

printf(u%d\n",d);}

A)1B)0

C)非0的數(shù)D)-1

14、設(shè)有:

inta=1,b=2,c=3,d=4,m=2,n=2;

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

A)1B)2

C)3D)4

15、設(shè)x,y,t均為int型變量,執(zhí)行語(yǔ)句:

x=y=3;

t=++xll++y;

完成后,y的值為

A)不確定B)4

C)3D)1

16、若執(zhí)行下面的程序時(shí),從鍵盤上輸入5和2,則輸出結(jié)果是

main()

{inta,b,k;

scanf("%d,%d”,&a,&b);

k=a;

if(a<b)k=a%b;

elsek=b%a;

printf(n%d\nn,k);

)

A)5B)3

C)2D)0

17、請(qǐng)閱讀以下程序:

main()

{inta=5,b=0,c=0;

if(a=b+c)printf(n***\n,f);

elseprintf("$$$\nn);

}

以上程序

A)有語(yǔ)法錯(cuò)不能通過(guò)編譯B)可以通過(guò)編譯但不能通過(guò)連接

15仔細(xì)答題,認(rèn)真總結(jié)!二級(jí)考試專用

第4*述存輅構(gòu)程再領(lǐng)計(jì)

C)輸出***D)輸出$$$

二、填空題

1、若已知a=10,b=20,則表達(dá)式!a<b的值為【】。

2、若從鍵盤輸入58.則以下程序輸出的結(jié)果是【】。

main()

{inta;

scanf("%d",&a);

if(a>50)printf("%d",a);

if(a>40)printf("%d",a);

if(a>30)printf("%d",a);

)

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

main()

{inta=5,b=4,c=3,d;

d=(a>b>c);

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

}

4、關(guān)系表達(dá)式x<y<z,用C語(yǔ)言的表達(dá)式為【】。

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

main()

{intx=100,a=10,b=20,ok1=5,ok2=0;

if(a<b)if(b!=15)if(!okl)x=l;

elseif(ok2)x=10;

elsex=-l;

printf("%d\n",x);}

6、以下程序的輸出結(jié)果是【L

#definePR(ar)printf("%d,",ar)

main()

{intj,a[]={1,3,5,7,9,11,15},*p=a+5;

for(j=3;j;j-)

switch(j)

{case1:

case2:PR(*p++);break;

case3:PR(*(一p));

)

printf(n\nM);

仔細(xì)答題,認(rèn)真總結(jié)!二級(jí)考試專用16

第4*送考修構(gòu)程再鉞計(jì)

三、部分填空題解析

1、解析:計(jì)算表達(dá)式!a<b,先計(jì)算!a,因a的值為10,!a的值為0。關(guān)系表達(dá)式0<20為真,

所以表達(dá)式!a<b的值為1。

2、解析:本題考查對(duì)if語(yǔ)句的掌握,當(dāng)輸入58以后,程序中的3個(gè)if語(yǔ)句都成立,所以分別

輸出58。

3、解析:本題的關(guān)鍵在于對(duì)變量c的賦值運(yùn)算:

d=(a>b>c)

d=(5>4>3)

先算5>3,為真,得1,即:d=(1>3),此時(shí)1>3,為假,得0。

4、解析:x<y<z的意思是y大于x并且y小于z,在C語(yǔ)言中,表達(dá)“并且”用邏輯與運(yùn)算符“&&”。

5、程序預(yù)置變量x的值為100,a的值為10,b的值為20,okl為5,ok2為0。程序中給出的if

語(yǔ)句可以寫成更結(jié)構(gòu)化的形式如下:

if(a<b)

if(b!=15)

if(!okl)x=l;

else

if(ok2)x=10;elsex=-l;

由于條件a<b成立,并且條件b!=15也成立,而okl不等于0,執(zhí)行else后的語(yǔ)句。又因ok2等

于0,執(zhí)行else后的語(yǔ)句賦給X。所以程序輸出

6、解析:程序的宏定義PR以d格式輸出參數(shù)的值和逗號(hào)字符。程序給數(shù)組a賦初值,并由

指針p指向元素a[5]。程序讓j從3至1,共循環(huán)3次。當(dāng)j是3時(shí),讓p減I,并輸出p所指元素的

值9;當(dāng)j是2和1時(shí),輸出p所指的數(shù)組元素的值,并讓p增1,順序輸出9和11。所以程序輸出:

9,9,11,

17仔細(xì)答題,認(rèn)真總結(jié)!二級(jí)考試專用

菊5*循林樓構(gòu)

第5章循環(huán)結(jié)構(gòu)

一、選擇題

1、下面有關(guān)for循環(huán)的正確描述是

A)for循環(huán)只能用于循環(huán)次數(shù)已經(jīng)確定的情況

B)for循環(huán)是先執(zhí)行循環(huán)體語(yǔ)句,后判斷表達(dá)式

C)在for循環(huán)中,不能用break語(yǔ)句跳出循環(huán)體

D)for循環(huán)的循環(huán)體語(yǔ)句中,可以包含多條語(yǔ)句,但必須用花括號(hào)括起來(lái)

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

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)

3、以下描述中正確的是

A)由于do-while循環(huán)中循環(huán)體語(yǔ)句只能是一條可執(zhí)行語(yǔ)句,所以循環(huán)體內(nèi)不能使用復(fù)

合語(yǔ)句

B)do-while循環(huán)由do開(kāi)始,用while結(jié)束,在while(表達(dá)式)后面不能寫分號(hào)

C)在do-while循環(huán)體中,是先執(zhí)行一次循環(huán),再進(jìn)行判斷

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

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

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

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

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

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

5、對(duì)下I,n兩個(gè)語(yǔ)句描述正確的是

I.while(1

溫馨提示

  • 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)論