二級C語言習(xí)題匯總及答案_第1頁
二級C語言習(xí)題匯總及答案_第2頁
二級C語言習(xí)題匯總及答案_第3頁
二級C語言習(xí)題匯總及答案_第4頁
二級C語言習(xí)題匯總及答案_第5頁
已閱讀5頁,還剩326頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

計算機二級C語言習(xí)題集匯總及答案

目錄

第一章C語言基礎(chǔ)知識

第二章C語言程序設(shè)計的初步知識

第三章順序結(jié)構(gòu)程序設(shè)計

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

第五章循環(huán)結(jié)構(gòu)程序設(shè)計

第六章數(shù)組

第七章函數(shù)

第八章指針

第九章結(jié)構(gòu)體與共用體

第十章文件

附錄1預(yù)處理命令

附錄2位運算

模擬試題一

模擬試題二

模擬試題三

模擬試題四

模擬試題五

第一章答案

第二章答案

第三章答案

第四章答案

第五章答案

第六章答案

第七章答案

第八章答案

第九章答案

第十章答案

附錄1答案

附錄2答案

模擬試題一答案

模擬試題二答案

模擬試題三答案

模擬試題四答案

模擬試題五答案

第一章C語言基礎(chǔ)知識

一、選擇題

1.C語言規(guī)定,必須用C作為主函數(shù)名。(0級)

A)FunctionB)includeC)mainD)stdio

2.一個C程序可以包含任意多個不同名的函數(shù),但有且僅有一

個,一個C程序總是從B開始執(zhí)行。(0級)

A)過程B)主函數(shù)C)函數(shù)D)

include

3.A是C程序的基本構(gòu)成單位。(0級)

A)函數(shù)B)函數(shù)和過程C)超文本過程D)子程

4.下列說法正確的是C。(0級)

A)一個函數(shù)的函數(shù)體必須要有變量定義和執(zhí)行部分,二者缺一不可

B)一個函數(shù)的函數(shù)體必須要有執(zhí)行部分,可以沒有變量定義

C)一個函數(shù)的函數(shù)體可以沒有變量定義和執(zhí)行部分,函數(shù)可以是空

函數(shù)

D)以上都不對

5.下列說法正確的是D。(0級)

A)main函數(shù)必須放在C程序的開頭

B)main函數(shù)必須放在C程序的最后

C)main函數(shù)可以放在C程序的中間部分,但在執(zhí)行C程序時是從程

序開頭執(zhí)行的

D)main函數(shù)可以放在C程序的中間部分,但在執(zhí)行C程序時是從

main函數(shù)開始的

6.下列說法正確的是C。(0級)

A)在執(zhí)行C程序時不是從mian函數(shù)開始的

B)C程序書寫格式嚴(yán)格限制,一行內(nèi)必須寫一個語句

C)C程序書寫格式自由,一個語句可以分寫在多行上

D)C程序書寫格式嚴(yán)格限制,一行內(nèi)必須寫一個語句,并要有行號

7.在C語言中,每個語句和數(shù)據(jù)定義是用C結(jié)束。(0級)

A)句號B)逗號C)分號D)括號

8.下列字符串是標(biāo)識符的是A。(0級)

A)_HJB)9_studentC)longD)LINE1

9.以下說法正確的是C。(0級)

A)C語言程序總是從第一個定義的函數(shù)開始執(zhí)行

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

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

D)C語言程序中的main。函數(shù)必須放在程序的開始部分

10.B不是C語言提供的合法關(guān)鍵字。(0級)

A)switchB)printC)caseD)default

11.C語言提供的合法關(guān)鍵字是Ao(0級)

A)breackB)printC)funitonD)end

12.C語言提供的合法關(guān)鍵字是A0(0級)

A)continueB)procedureC)beginD)append

13.C語言規(guī)定:在一個源程序中,main函數(shù)的位置Co(02-03

第一學(xué)期試題)

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

C)可以在任意位置D)必須在源文件的最后

14.一個C語言程序是由Bo(02?03第一學(xué)期試題)

A)一個主程序和若干個子程序組成;

B)函數(shù)組成,并且每一個C程序必須且只能由一個主函數(shù);

C)若干過程組成;

D)若干子程序組成.

二、填空題

1.一個C程序至少包含一個,即。(0級)

2.一個函數(shù)由兩部分組成,它們是函數(shù)的說明部分和函

數(shù)體。(0級)

3.函數(shù)體的范圍是。(0級)

4.函數(shù)體一般包括和。(0級)

5.C語言是通過來進(jìn)行輸入輸出的。(0級)

6.在C語言中,凡在一個標(biāo)識符后面緊跟著一對圓括弧,就表明它

是一個。(0級)

7.主函數(shù)名后面的一對圓括號中間可以為空,但一對圓括號不

能。(0級)

第二章C語言程序設(shè)計的初步知識

一、選擇題

1.在C語言中,下列類型屬于構(gòu)造類型的是Do(0級)

A)整型B)字符型C)實型D)數(shù)組類

2.在C語言中,下列類型屬于構(gòu)造類型的是Do(0級)

A)空類型B)字符型C)實型D)共用體

類型

3.在C語言中,下列類型屬于構(gòu)造類型的是Do(0級)

A)整型B)指針類型C)實型D)結(jié)構(gòu)體

類型

4.在C語言中,下列類型屬于基本類型的是Ao(0級)

A)整型、實型、字符型B)空類型、枚舉型

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

5.下列類型屬于基本類型的是C。(0級)

A)結(jié)構(gòu)體類型和整型B)結(jié)構(gòu)體類型、數(shù)組、指針、空類型

C)實型D)空類型和枚舉類型

6.下列字符串屬于標(biāo)識符的是Ao(0級)

A)INTB)5studentC)2ongD)!DF

7.下列字符串屬于標(biāo)識符的是Ao(0級)

A)WLB)33333C)intD)LINE3

8.下列字符串不屬于標(biāo)識符的是C。(0級)

A)sumB)averageC).day_nightD)M.D.JOHN

9.下列字符串不屬于標(biāo)識符的是Do(0級)

A)totalB)lutos_l_2_3C)_nightD)$123

10.下列字符串不屬于標(biāo)識符的是Do(0級)

A)_aboveB)allC)_endD)#dfg

11.C語言中不能用來表示整常數(shù)的進(jìn)制是Do(0級)

A)十進(jìn)制B)十六進(jìn)制C)八進(jìn)制D)二進(jìn)

12.C語言中能用來表示整常數(shù)的進(jìn)制是A。(0級)

A)十進(jìn)制、八進(jìn)制、十六進(jìn)制B)十二進(jìn)制、十進(jìn)制

C)六進(jìn)制、八進(jìn)制D)二進(jìn)制、十進(jìn)制

13.在C語言中,回車換行符是A。(0級)

A)\nB)\tC)\vD)\b

14.在C語言中,退格符是B。(0級)

A)\nB)\tC)\vD)\b

15.在C語言中,反斜杠符是D。(0級)

A)\nB)\tC)\vD)\\

16.在ASCII碼表中可以看到每個小寫字母的ASCII碼比它相應(yīng)的

大寫字母的ASCH碼A。(。級)

A)大32B)大64C)小32D)小64

17.設(shè)d為字符變量,下列表達(dá)式不正確的是C。(0級)

A)d=97B)d='a,C)d="a"D)d='g'

18.設(shè)d為字符變量,下列表達(dá)式正確的是B。(0級)

A)d=678B)d='a'C)d="d"D)d=,gjkf

19.10+'a'+1.5-567.345/'b'的結(jié)果是B型數(shù)據(jù)。(0級)

A)longB)doubleC)intD)unsignedfloat

20.語句inti=3;k=(i++)+(i++)+(i++);執(zhí)行過后k的值為A,i

的值為。(0級)

A)9,6B)12,5C)18,6D)15,5

21.如果i=3,則k=(i++)+(++i)+(i++)執(zhí)行過后k的值為A,i

的值為。(1級)

A)12,6B)12,5C)18,6D)15,5

22.如果i=3,則k=(++i)+(++i)+(i++)執(zhí)行過后k的值為A,i

的值為。(1級)

A)15,6B)12,5C)18,6D)15,5

23.如果i=3,則k=(++i)+(++i)+(++i)執(zhí)行過后k的值為C

i的值為。(1級)

A)9,6B)12,5C)18,6D)15,5

24.如果inti=3,則printf(“%d”,-i++)的結(jié)果為A,i的值

為。(1級)

A)-3,4B)-4,4C)-4,3D)-3,3

25.如果inti=3,intj=4,則k=i+++j執(zhí)行之后k,i和j的值分別為

C。(1級)

A)7,3,4B)8,3,5C)7,4,4

D)8,4,5

26.已知在ASCII字符集中,數(shù)字0的序號為48,下面程序的輸出

結(jié)果為B。(1級)

main()

{charx,y;

x=O;y=9;

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

)

A)因輸出格式不合法,輸出錯誤信息B)48,57

C)0,9D)48,58

27.已知在ASCII字符集中,字母A的序號為65,下面程序的輸出

結(jié)果為C。(1級)

main()

{charc=,A,;inti=10;

c=c+10;

i=c%i;

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

)

A)75,7B)75,5

C)K,5D)因存在非圖形字符,無法直接顯示出來

28.已知在ASCH集中,字母A的序號為65,下面程序的輸出結(jié)果

為Bo(1級)

main()

{charcl='B',c2='Y';

printfC<%d,%d\n,,,++cl,-c2);

}

A)輸出格式不合法,輸出錯誤信息B)67,88

C)66,89D)C,X

29.C語言中最簡單的數(shù)據(jù)類型包括B0(1級)

A)整型,實型,邏輯型B)整型,實型,字符型

C)整型,字符型,邏輯型D)整型,實型,邏輯型,字符型

30.C語言中,運算對象必須是整型數(shù)的運算符是A。(1級)

A)%B)\C)%和\D)**

31..下列常數(shù)中,合法的C常量是D。(1級)

A)-0.B)'105‘C"AB'D)3+5

32.下列常數(shù)中,合法的C常量是D0(1級)

A)"x-y"B)'105'CYBe'D)7ff

33.下列常數(shù)中,合法的C常量是Ao(1級)

A)'\nB)e-310C)'DEF,D)'1234,

34.下列常數(shù)中,不合法的C常量是B。(1級)

A)-0x2alB)lg3C”「D]

CHINA”

35.下列常數(shù)中,不合法的C常量是B。(1級)

A)-Ox3blB)123e+2.3C)'}'D)6e+7

36.下列符號中,可以作為變量名的是D。(1級)

A)+aB)12345eC)a3BD)5e+0

37.下列符號中,可以作為變量名的是C。(1級)

A)+cB)*XC)_DAYD)nextday

38.下面程序的輸出結(jié)果是。(1級)

main()

{intx;

x=-3+4*5-6;printf("%d”,x);

x=3+4%5-6;printf("%d”,x);

x=-3*4%-6/5;printf("%d”,x);

x=(7+6)%5/2;printf("%d”,x);

)

A)11101B)11-321

C)12-321D)11121

39.下面程序的輸出結(jié)果是0(1級)

mian()

{intx=2,y=0,z;

x*=3+2;printf("%d”,x);

x*=y=z=4;printf("%d”,x);

}

A)840B)1040

C)10,4D)8,4

40.下面程序的輸出結(jié)果是o(1級)

main()

{intx=2,y=0,z;

x+=3+2;printf("%d”,x);

x*=y=z=4;printf("%d”,x);

)

A)728B)無法計算C)7,4D)8,4

41.下面程序的輸出結(jié)果是。(1級)

main()

{intx=4,y=0,z;

x*=3+2;printf("%d”,x);

x*=y==(z=4);printf("%d”,x);

)

A)1440B)200C)204D)144

42.下面程序的輸出結(jié)果是。(1級)

main()

{intij;

i=16;j=(i++)+i;printf("%d”,j);

i=15;printfC%d%d”,++i,i);

)

A)321615B)331515

C)341516D)341615

43.在C語言中,以下合法的字符常量是。(1級)

A)'\084'B)'\x43'C)'O'D)"\O"

44.若已定義X和Y為double類型,則表達(dá)式:x=l,y=x+3/2的值

為。(1級)

A)1B)2C)2.0D)2.5

45.下列程序的執(zhí)行結(jié)果是。(1級)

#include<stdio.h>

#definesum10+20

main()

(

intb=O,c=O;

b=5;

c=sum*b;

printf("%d",c);

)

A)100B)110C)70D)150

46..下列程序的執(zhí)行結(jié)果是。(1級)

#include<stdio.h>

#definesum(l0+20)

mian()

inta=O,b=O,c=O;

a=sum;

b=5;

c=sum*b;

printf("%d",c);

A)100B)110C)70D)150

47.表達(dá)式(int)2.1416的值為。(1級)

A)2B)2.1C)0D)3

48.表達(dá)式(double)(20/3)的值為。(1級)

A)6B)6.0C)2D)3

49.在下面幾組數(shù)據(jù)類型中,全是基本數(shù)據(jù)類型是哪一組

(02?03第一學(xué)期試題)

A)整型實型字符型B)整型數(shù)組指針

C)數(shù)組結(jié)構(gòu)體共用體D)指針邏輯型空類型

50.以下說法正確的是。(02?03第一學(xué)期試題)

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

B)在C程序中,無論是整數(shù)還是實數(shù),其存放形式都一致

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

D)在C程序中,變量可以不必先定義就可使用.

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

是。(02?03第一學(xué)期試題)

A)8B)7

C)6D)5

52.若有以下定義,則正確的賦值語句為。(02?03第一學(xué)期試

題)

inta,b;

floatx;

A)a=l,b=2,B)b++;

C)a=b=5D)b=int(x);

53..C語言規(guī)定標(biāo)識符由等字符組成.(01?02第二學(xué)期試題)

A)字母數(shù)字下劃線B)中劃線字母數(shù)字

C)字母數(shù)字逗號D)字母下劃線中劃線

54.若有如下定義:inta=2,b=3;floatx=3.5,y=2.5;則表達(dá)式:

(float)(a+b)/2+(int)x%(int)y的值是。(01-02第二學(xué)期試題)

A)2.500000B)3.500000C)4.500000D)5.000000

55.以下表達(dá)式:2+'a'+i*f,其中i為整型變量,f為float型變量,

則表達(dá)式的最終數(shù)據(jù)類型為。(01~02第二學(xué)期試題)

A)intB)floatC)charD)double

56.若有:inta,b=2;貝lj2=8*100+1.5,100)則a的值是。(01-02第二

學(xué)期試題)

A)100B)100.5C)200.5D)300.5

57.有如下語句:

printf("%s,%5.3s\n”,“COMPUTER”,“COMPUTER");

執(zhí)行語句后的最終結(jié)果為。(01?02第二學(xué)期試題)

A)COMPUTER,CMP.B)COMPUTER,CMP.

C)COMPU,CMP.D)COMPU,CMP

58.已知ch是字符型變量,下面不正確的賦值語句

是:o(03試題)

A)ch='\0'B)ch='a+b'

C)ch='7'+'9'D)ch=7+9

59.若x和y都為float型變量,且x=3.6,y=5.8執(zhí)行下列語句后輸出

結(jié)果為:。(03試題)

printf(<<%f,,(x,y));

A)3.600000B)5.800000

C)3.600000,5.800000D)輸出符號不夠,輸出不正確值

60.設(shè)變量a是整型,變量f是實型,變量I是雙精度型,則表達(dá)式10

+'a'+I*f值的數(shù)據(jù)類型:。(往屆試題)

A)intB)floatC)doubleD)不確定

61.已知字母A的ASCII碼為十進(jìn)制65,下面程序段的運行結(jié)果

為:。(往屆試題)

charchl,ch2;

chl='A'+5-3;ch2='A'+6-3;

printf("%d,%c\n”,chl,ch2);

A)67,DB)B,CC)C,DD)不確定值

62.以下不正確的C語言標(biāo)識符是0(04?05第二學(xué)期試題)

A)ABCB)abcC)a_bcD)ab.c

63.設(shè)x、y均為float型變量,則以下不合法的賦值語句是。

(04?05第二學(xué)期試題)

A)++x;B)y=(x%2)/10;

C)x*=y+8;D)x=y=0;

64.若有說明語句:charc='\64';

則變量C包含:。(往屆試題)

A)1個字符B)2個字符

C)3個字符D)說明不合法,C值不確定。

65.表達(dá)式18/4*sqrt(4.0)/8值的數(shù)據(jù)類型為。(往屆試題)

A)intB)floatC)doubleD)不確定

66.設(shè)整型變量a值為9,則下列表達(dá)式中使b的值不為4的表達(dá)

式:。(往屆試題)

A)b=a/2B)b=a%2

C)b=8-(3,a-5)D)b=a>5?4:2

67.設(shè)有以下定義,則能使值為3的表達(dá)式是:。(往屆試

題)

intk=7,x=12;

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

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

68.以下選項中是C語言的數(shù)據(jù)類型的是:o(往屆試題)

A)復(fù)數(shù)型B)邏輯型

C)雙精度型D)集合型

二、填空題

1.C語言的數(shù)據(jù)類型有四大類,分別是、、、。

(0級)

2.C語言數(shù)據(jù)類型中構(gòu)造類型包括三種,他們是、、。

(0級)

3.C語言基本數(shù)據(jù)類型包括、、、。(0級)

4.在C語言中,程序運行期間,其值不能被改變的量叫。(0級)

5.在C語言中,常量有不同的類型,包括、、和等。

(0級)

6.符號常量是指。(0級)

7.整型常量和實型常量也稱為,它們有正負(fù)之分。(0級)

8.在C語言中,在習(xí)慣上符號常量名用,變量用。(大

寫或小寫)(0級)

9.在C語言中,變量是。(0級)

10.變量也有不同類型,如、和等。(0級)

11.C語言在定義變量的同時說明變量的,系統(tǒng)在編譯時就能

根據(jù)變量定義及其為它分配相應(yīng)數(shù)量的存儲空間。(0級)

12.在C語言中,用來標(biāo)識變量名,符號常量名,函數(shù)名,數(shù)組名,

類型名,文件名的有效字符序列稱為。(0級)

13.在C語言中,標(biāo)識符只能由、和三種字符組成,

且第一個字符必須或。(0級)

14.在C語言中,要求對所有甬道的變量,遵循先定義后的原

則。(0級)

15.可以用來表示C的整常數(shù)的進(jìn)制是、、。

(0級)

16.整型變量可分為、、、四種,分別用。

(0級)

17.在一個整常量后面加一個字母和,則認(rèn)為是longint型

常量。(0級)

18.在C語言中,實數(shù)有兩種表現(xiàn)形式,是和。(0級)

19.實型變量分為和,即float和double型。(0級)

20.C的字符常量是用括起來的一個字符。(0級)

21.在一個變量定義語句中可以同時定義多個變量,變量之間用

隔開。(0級)

22.C語言中規(guī)定,在變量定義的同時也可以給變量賦初值,叫

做。(0級)

23.下面的程序

mian()

{printf("abc\tde\rfg\n");/*空白處分別為兩個和一個空格*/

printf("h\ti\b\bjk");/*空白處為三個空格*/

運行結(jié)果是。(1級)

24.int型的取值范圍是0(0級)

25.在C語言中,字符型數(shù)據(jù)和整型數(shù)據(jù)之間可以通用,一個字符

數(shù)據(jù)既能輸出,也可以輸出。(0級)

26.下面的程序

main()

{charcl,c2;

cl='a';c2='b';

c1=c1-32;c2=c2-32;

printf("%c%c",cl,c2);

運行結(jié)果為。(0級)

27.在ASCH代碼表中可以看到每一個小寫字母比相應(yīng)的大寫字母

的ASCH代碼大。(。級)

28.C的字符串常量是用括起來的字符序列。(0級)

29.在C語言中,系統(tǒng)在每一個字符串的結(jié)尾自動加一個“字符串

結(jié)束標(biāo)志符”即,以便系統(tǒng)據(jù)此數(shù)據(jù)判斷字符串是否結(jié)束。

(0級)

30.表達(dá)式10+豆+L5-0.5*b的結(jié)果。(1級)

31.表達(dá)式10+'a*L5-567.345/b的結(jié)果是型數(shù)據(jù)。(1級)

32.在TURBO中,單精度實數(shù)的取值范圍在之間。(1級)

33.在C語言中,加減乘除這些運算符需要兩個運算對象,稱為運

算符。

34.在C語言中,算術(shù)運算符的結(jié)合性是。(1級)

35.下面的程序

mian()

{floatx;inti;

x=3.6;i=(int)x;

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

)

運行結(jié)果為。(1級)

36.如果inti=3,則printf("%d",-i++)執(zhí)行后輸出是,i的結(jié)果

是。(1級)

37.在C語言中,表達(dá)式的類型

有,,,,,。(1級)

38.逗號表達(dá)式的形式如下:

表達(dá)式1,表達(dá)式2

則逗號表達(dá)式的結(jié)果是的值.(1級)

39.表達(dá)式x=(a=3,6*3)和表達(dá)式x=a=3,6*a分別是表達(dá)式和

表達(dá)式,兩個表達(dá)式執(zhí)行完的結(jié)果是和.執(zhí)行后X的值分別

是,.(1級)

40.main()

{inti,j,m,n;

i=8;j=10;

m=++i;n=j++;

printf("%d,%d,%d,%d",i,j,m,n);

運行后的值是.(1級)

41.在C語言中的運算符優(yōu)先級最小的是運算符.(1級)

42.在C語言中,可以利用,將一個表達(dá)式的值轉(zhuǎn)換成指定

的類型。

第三章順序結(jié)構(gòu)程序設(shè)計

一、選擇題

1.C語言中調(diào)用printf進(jìn)行輸出時需要注意,在格式控制串中,格式說明

與輸出項的個數(shù)必須相同。如果格式說明的個數(shù)小于輸出項的個數(shù),

多余的輸出項將;如果格式說明的個數(shù)多于輸出項的個

數(shù),則對于多余的格式將輸出不定值(或0)。(0級)

A)不予輸出B)輸出空格

C)照樣輸出D)輸出不定值或0

2.在scanf函數(shù)的格式控制中,格式說明的類型與輸入的類型應(yīng)該一

一對應(yīng)匹配。如果類型不匹配,系統(tǒng)。(0級)

A)不予接收

B)并不給出出錯信息,但不可能得出正確信息數(shù)據(jù)

C)能接受正確輸入

D)給出出錯信息,不予接收輸入

3.下列說法正確的是。(0級)

A)輸入項可以是一個實型常量,如scanf("%f",4.8);

B)只有格式控制,沒有輸入項也能進(jìn)行正確輸入,如

scanf("a=%d,b=%d");

C)當(dāng)輸入一個實型數(shù)據(jù)時一,格式控制部分應(yīng)規(guī)定小數(shù)點后

的位數(shù),如scanf("%5.3f”,&f);

D)當(dāng)輸入數(shù)據(jù)時,必須指明變量的地址,如scanf("%f",&f);

4.根據(jù)題目中已給出的數(shù)據(jù)的輸入和輸出形式,程序中輸入/輸出語句

的正確是

o(1級)

main()

(

inta;floatx;

printf("inputa,x:");

輸入語句

輸出語句

)

輸入形式inputa,x:32.1

輸出形式a+x=5.10

A)scanf("%d,%f,,&a,&x);

printf("\na+x=%4.2f',a+x);

B)scanf("%d%f",&a.&x);

printf("\na+x=%4.2f',a+x);

C)scanf("%d%f",&a,&x);

printf("\na+x=%6.1f',a+x);

D)scanf("%d%3.1f',&a,&x);

printf("\na+x=%4.2f",a+x);

5.以下程序的輸出結(jié)果是0(1級)

main()

(

inti=010,j=10,k=0xl0;

printf("%d,%d,%d\n",i,j,k);

A)8,10,16B)8,10,10010,10,10D)10,10,16

6.以下程序的輸出結(jié)果是o(1級)

main()

(

inti=011,j=ll,k=0xll;

printf("%d,%d,%d\n",i,j,k);

)

A)9,ll,17011,11,11D)ll,ll,16

7.以下程序的輸出結(jié)果是。(1級)

#include<stdio.h>

main()

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

A)不確定的值(因變量無定義)B)0

C)-lD)1

8.以下程序的輸出結(jié)果是。(1級)

main()

charcl='6',c2='O';

printf("%c,%c,%d,%d\n",cI,c2,cl-c2,cl+c2);

)

A)因輸出格式不合法,輸出出錯信息B)6,0,6,102

C)6,0,7,6D)6,0,5,7

9.設(shè)有如下定義

intx=10,y=3,z;

則語句

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

的輸出結(jié)果是。(1級)

A)3B)0C)4D)1

10.設(shè)有如下定義

intx=10,y=5,z;

則語句

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

的輸出結(jié)果是。(1級)

A)1B)0C)4D)3

11.以下程序的輸出結(jié)果是o(1級)

main()

{intx=10,y=10;

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

)

A)1010B)99C)910D)109

12.寫出下面程序的輸出結(jié)果o(1級)

main()

{intx;

x=-3+4*5-6;printf("%d",x);

x=3+4%5-6;printf("%d",x);

x=-3*4%6/5;printf("%d",x);

x=(7+6)%5/2;printf("%d",x);

)

A)ll101B)ll-321012-321D)ll121

13.寫出下面程序的輸出結(jié)果o(1級)

main()

(

intx,y,z;

x=y=l;

z=x++-1;printf("%d,%d\t",x,z);

z+=-x+++(++y);printf("%d,%d",x,z);

)

A)2,03,0B)2,l3,0C)2,02,1D)2,l0,1

14.寫出下面程序的輸出結(jié)果。(1級)

main()

(

inti,j;

i=20;j=(++i)+i;printf("%d",j);

i=13;printf("%d%d),i++,i);

)

A)4214,13B)4114,14C)421313D)421314

15.若有定義:intx,y;chara,b,c;并有以下輸入數(shù)據(jù)(此處,<cr>代表換

行符)

12<cr>

ABC<cr>

則能給x賦整數(shù)1,給y賦整數(shù)2,給a賦字符A,給b賦字符B,

給c賦字符C的正確程序段是。(1級)

A)scanf("x=%dy=%d",&x,&y);a=getchar();b=getchar();c=getchar();

B)scanf("%dy%d",&x,&y);a=getchar();b=getchar();c=getchar();

C)scanf("%d%d%c%c%c%c%c%c",&x,&y,&a,&a,&b,&b,&c,&c);

D)scanf("%d%d%c%c%c",&x,&y,&a,&b,&c);

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

A)10B)20C)1D)0

17.printf函數(shù)中用到格式符"%4s",其中數(shù)字4表示輸出的字符串站

用4歹人如果字符串長度大于4,則按原字符長從左向右全部輸出;

如果字符串長度小于4,則輸出方式為o(1級)

A)從左起輸出該字符串,右補空格B)按原字符長從左向右全

部輸出

C)右對齊輸出該字符,左補空格D)輸出錯誤信息

18.以下C程序,正確的運行結(jié)果是o(1級)

main()

(

longy=-34567;

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

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

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

printf("y=%+81d\n",y);

)

A)y=-34567B)y=-34567

y=-34567y=-34567

y=-0034567y=-0034567

y=-34567y=+-34567

C)y=-34567D)y=-34567

y=-34567y=-0034567

y=-0034567y=00034567

y=-34567y=+34567

19.C程序的基本編譯單位是o(01?02第二學(xué)期試題)

A)函數(shù)B)文件C)源文件D)子程序

20.設(shè)有如下定義和執(zhí)行語句,其輸出結(jié)果為:。(03試題)

inta=3,b=3;

a=-b+1;printf("%d%d”,a,b);

A)32B)42022D)23

21.根據(jù)定義和數(shù)據(jù)的輸入方式,輸入語句的正確形式為:

(往屆試題)

已有定義:floatal,a2;

數(shù)據(jù)的輸入方式:4.523

3.52

A)scanf(“%f%f”,&al,&a2);

B)scanf("%f,%f”,al,a2);

C)scanf("%4.3f,%3.2f”,&al,&a2);

D)scanf("%4.3f%3.2f",al,a2);

22.以下程序的輸出結(jié)果是:。(往屆試題)

main()

{int1=012,j=12,k=0xl2;

printf("%d,%d,%d\n”,I,j,k);

A)10,12,18B)12,12,12

C)10,12,12D)12,12,18

23.以下程序的輸出結(jié)果是:(注:一表示空格)。(往屆

試題)

main()

{printf("\n*sl=%8s*",“china");

printf("\n*s2=%-5s*",“chi”);)

A)*sl=china___*B)*sl=china___*

*s2=chi**s2=chi_

C)*sl=___china*D)*sl=___china*

*s2=__chi**s2=chi_,

二.填空題

l.C語言中的語句可分為5類,即

(0級)

2.由一次函數(shù)調(diào)用加一個分號構(gòu)成一個語句。(0級)

3.putchar函數(shù)的作用是。(0級)

4.printf是C語言提供的標(biāo)準(zhǔn)輸出函數(shù),它的作用是。(0級)

5.printf函數(shù)的“格式控制”包括兩部分,他們是和o(0

級)

6.對不同類型的語句有不同的格式字符。例如:格式字符是

用來輸出十進(jìn)制整數(shù),格式字符是用來輸出一個字符,

格式字符是用來輸出一個字符串。(0級)

7.%-ms表示如果串長m,則在m列范圍內(nèi),字符串向靠,

補空格。(0級)

8.如果要輸出字符“&”,則應(yīng)該在“格式控制”字符串中用表

示。(0級)

9.getchar函數(shù)的作用是。(0級)

10.符號是運算符,&a是指。(0級)

11.scanf函數(shù)中的"格式控制"后面應(yīng)當(dāng)是,而不是。(0

級)

12.C語言中的空語句就是。(0級)

13.復(fù)合語句是由一對括起來的若干語句組成。(0級)

14.分析下面程序:

#include<stdio.h>

main()

(

intx=2,y,z;

x*=3+2;printf("%d\n",x);

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

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

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

)

程序的輸出結(jié)果為。(1級)

15.編制程序?qū)崝?shù)a與b進(jìn)行加,減,乘,除計算,要求顯示如下

結(jié)果。

jia=70.000000

jian=30.000000

cheng=1000.000000

chu=2.5000000

程序:

#include<stdio.h>

voidmain(void)

{(1)

a=50.0;b=20.0;

printf("jia=%An",(2));

printf("jian=%f\n"(3));

printf("cheng=%f\n",(4));

printf("chu=%f\n",(5));

)

將缺少的部分填在空白處。(1級)

16.下列程序的輸出結(jié)果是。(1級)

#include<stdio.h>

main()

{chara;

a='A';

printf("%d%c",a,a);

)

17.分析下面程序

main()

intx=2,y,z;

x*=3+2;printf("%d\n",x);

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

x=y=1;

z=x++-l;printf("%d,%d\n",x,z);

z+=-x+++(++y);printf("%d,%d",x,z);

)

程序的輸出結(jié)果是。(1級)

18.分析下面程序

main()

(

intx,y;

x=16,y=(x++)+x;printf("%d\n",y);

x=15;printf("%d,%d\n",++x,x);

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

x=13;printf("%d,%",x++,x);

)

程序的輸出結(jié)果是。(1級)

19.以下程序的輸出結(jié)果為:o(03試題)

main()

{floata=3.14,b=3.14159;

printf("%f,%5.3f\n”,a,b);}

20.以下程序的輸出結(jié)果為:o(04?05第二學(xué)期試題)

#include<stdio.h>

main()

{charcl,c2;

cl=ta,;

c2='\n';

printf("%c%c”,cl,c2);}

三、編程題

1.從鍵盤上輸入一個大寫字母,要求改用小寫字母輸出。(1級)

2.編寫程序,求方程ax2+bx+c=0的解x。(1級)

3.請編寫一個程序,能顯示出以下兩行文字。(1級)

Iamastudent.

IloveChina.

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

一、選擇題

1.下列運算符中優(yōu)先級最高的是。(0級)

A)>B)+C)&&D)!=

2.以下關(guān)于運算符優(yōu)先級的描述中,正確的是。(0級)

A)!(邏輯非)>算術(shù)運算〉關(guān)系運算〉&&(邏輯與)>11(邏輯或)>

賦值運算

B)&&(邏輯與)>算術(shù)運算>關(guān)系運算>賦值運算

C)關(guān)系運算〉算術(shù)運算〉&&(邏輯與)>11(邏輯或)>賦值運算

D)賦值運算〉算術(shù)運算〉關(guān)系運算〉&&(邏輯與)>11(邏輯或)

3.邏輯運算符的運算對象的數(shù)據(jù)類型。(0級)

A)只能是0或1B)只能是.T.或.F.

C)只能是整型或字符型D)任何類型的數(shù)據(jù)

4.能正確表示x的取值范圍在[0,100J和[-10,-5]內(nèi)的表達(dá)式

是。(1級)

A)(x<=-10)II(x>=-5)&&(x<=0)II(x>=100)

B)(x>=-10)&&(x<=-5)II(x>=0)&&(x<=100)

C)(x>=-10)&&(x<=-5)&&(x>=0)&&(x<=100)

D)(x<=-10)II(x>=-5)&&(x<=0)II(x>=100)

5.以下程序的運行結(jié)果是。(1級)

main()

(

intc,x,y;

x=l;

y=l;

c=0;

c=x++lly++;

printf(t€\n%d%d%d\n,,,x,y,c);

)

A)110B)211C)OilD)001

6.以下程序的運行結(jié)果是。(1級)

main()

(

intc,x,y;

x=0;

y=0;

c=0;

c=x++&&y++;

printf(tt\n%d%d%d\n,,,x,y,c);

)

A)100B)211C)Oil)001

7.判斷字符型變量ch為大寫字母的表達(dá)式是O(1級)

A)'A'<=ch<='Z'B)(ch>='A')&(ch<=,

Z')

C)(ch>='A')&&(ch<=,Z')D)(ch>='A')AND(ch<='

ZD

8.判斷字符型變量ch為小寫字母的表達(dá)式是O(1級)

A)'a'<=ch<='z'B)(ch>=a)&&(ch<=z)

C)(ch>='a')II(ch<='z')D)(ch>='a')&&(ch<='z')

9.以下if語句書寫正確的是。(1級)

A)if(x=0;)B)if(x>0)

printf("%7,x);{x=x+l;printf("%F',x);}

elseprintf("%F',-x);elseprintf(,,%f,,-x);

C)if(x>0);D)if(x>0)

{x=x+1;printf("%F',x);}{x=x+l;printf("%f',x)}

elseprintf(,,%f,,-x);elseprintf(,,%f,,-x);

10.分析以下程序:

main()

{intx=5,a=0,b=0;

if(x=a+b)printf("****\n*);

elseprintfC4####\n");

以上程序。(1級)

A)有語法錯,不能通過編譯B)通過編譯,但不能連接

C)輸出****D)輸出####

11.兩次運行下面的程序,如果從鍵盤上分別輸入6和4,則輸出結(jié)

果是。(1級)

main()

{intx;

scanf("%d”,&x);

if(x++>5)printf("%d”,x);

elseprintf("%d\n",x--);

)

A)7和5B)6和3C)7和4D)6和4

12.寫出下面程序的執(zhí)行結(jié)果。(1級)

main()

{intx,y=l;

if(y!=O)x=5;

printf("%d\t”,x);

if(y==0)x=3;

elsex=5;

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

)

A)13B)15C)53D)55

13.寫出下面程序的執(zhí)行結(jié)果o(2級)

main()

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

if(z<0)

if(y>0)x=3;

elsex=5;

printf("%d\t",x);

if(z=y<0)x=3;

elseif(y==0)x=5;

elsex=7;

printf("%d\t",x);

printf("%d\t",z);

A)170B)370C)550D)151

14.假定所有變量均已正確說明,下列程序段運行后x的值

是。(1級)

a=b=c=0;x=35;

if(!a)x=-l;

elseif(b);

if(c)x=3;

elsex=4;

A)34B)4C)35D)3

15.寫出下面程序的運行結(jié)果是。(2級)

main()

{intx,y=l,z;

if(y!=0)x=5;

printf("x+%d\t",x);

if(y==0)x=3;

elsex=5;

printf("x=%d\t\n",x);

x=l;

if(z<0)

if(y>0)x=3;

elsex=5;

printf("x=%d\t\n",x);

if(z=y<0)x=5;

elsex=7;

printf("x=%d\t",x);

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

if(x=y=z)x=3;

printf("x=%d\t",x);

printf("z=%d\t\n",z);

)

A)x=5x=5B)x=5x=5

X=1X=1

x=7z=0x=5z=0

x=3Z=1x=3z=0

C)x=5x=5D)x=5x=5

x=5X=1

x=7z=0x=7z=0

x=3Z=1x=3z=0

16.若有以下函數(shù)關(guān)系

x<0—?y=2x

x>0—?y=x

x=0―?y=x+l

下面程序段能正確表示以上關(guān)系的是o(2級)

A)y=2x;B)y=2x;

if(x!=O)if(x<=0)

if(x>O)y=x;if(x==0)y=x+l;

elsey=x+1;elsey=x;

C)if(x>=0)(D)y=x+l;

if(x>0)y=x;if(x<=0)

elsey=x+l;if(x<0)y=2x;

elsey=2x;elsey=x;

17.若有以下變量定義:

floatx;inta,b;

則正確的switch語句是0(1級)

A)switch(x)

{case1.0:printf("*\n");

case2.0:printf("**\n");

)

B)switch(x)

{casel,2:printf("*\n");

case3:printf("**\n");

)

C)switch(a+b)

{casel:printf("*\n");

case2*a:printf("**\n");

D)switch(a+b)

{casel:printf("*\n");

casel+2:printf("**\n");

18.以下關(guān)于運算符優(yōu)先順序的描述正確的是。(02-03第一學(xué)

期試題)

A)關(guān)系運算符〈算術(shù)運算符〈賦值運算符〈邏輯運算符

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

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

D)算術(shù)運算符〈關(guān)系運算符〈賦值運算符〈邏輯運算符

19

溫馨提示

  • 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)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論