c語言期末考試題庫-2023修改整理_第1頁
c語言期末考試題庫-2023修改整理_第2頁
c語言期末考試題庫-2023修改整理_第3頁
c語言期末考試題庫-2023修改整理_第4頁
c語言期末考試題庫-2023修改整理_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

千里之行,始于足下讓知識帶有溫度。第第2頁/共2頁精品文檔推薦c語言期末考試題庫習題一

一、挑選題

1.C語言是一種(C)。

A.低級語言

B.匯編語言

C.高級語言

D.機器語言2.以下不是C語言的特點的是(D)。

A.語言簡潔緊湊

B.可以直接對硬件舉行操作

C.數(shù)據(jù)類型豐盛

D.是面對對象的程序設計語言

3.一個C程序的執(zhí)行是從(A)。

A.本程序的main函數(shù)開頭,到main函數(shù)結束

B.本函數(shù)的第一個數(shù)開頭,到本程序文件的最后一個函數(shù)結束

C.本程序的main函數(shù)開頭,到本程序文件的最后一個函數(shù)結束

D.本函數(shù)的第一個數(shù)開頭,到本程序main函數(shù)結束

4.以下講述正確的是(C)。

A.在C程序中,main函數(shù)必需位于程序的最前面

B.C程序的每行只能寫一條語句

C.C語言的本身沒有輸入輸出語句

D.在對一個C程序舉行編譯的過程中,可以發(fā)覺解釋中的拼寫錯誤

5.以下講述不正確的是(D)。

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

B.一個C源程序必需包括一個main函數(shù)

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

D.在C程序中,解釋說明只能位于一條語句的后面

6.C語言規(guī)定:在一個源程序中,main函數(shù)的位置(C)。

A.必需在最開頭

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

C.可以隨意

D.必需在最后

7.一個C語言程序是由(B)。

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

B.函數(shù)組成

C.若干過程組成

D.若干子程序組成

8.以下講述中正確的是(C)。

A.C程序的基本組成單位是語句

B.C程序中的每一行只能寫一條語句

C.C語句必需以分號結束

D.C語言必需在一行內(nèi)寫完

9.以下講述中正確的是(C)。

A.C程序中的解釋只能浮現(xiàn)在程序的開頭位置和語句的后面

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

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

D.用C語言編寫的程序只能放在一個程序文件中

10.以下講述中正確的是(C)。

A.C語言程序?qū)脑闯绦蛑械谝粋€函數(shù)開頭執(zhí)行

B.可以在程序中由用戶指定隨意一個函數(shù)作為主函數(shù),程序?qū)慕耖_頭執(zhí)行

C.C語言規(guī)定必需用main作為主函數(shù)名,程序從今開頭執(zhí)行,在此結束

D.main可作為用戶標識符,用以命名隨意一個函數(shù)作為主函數(shù)

11.下列講述中正確的是(A)。

A.每個C程序文件中都必需要有一個main函數(shù)

B.在C程序中main()位置是固定的

C.C程序中全部函數(shù)之間都可以互相調(diào)用,與函數(shù)所在位置無關

D.在C程序的函數(shù)中不能定義另一個函數(shù)

12.C語言源程序的基本單位是(B)。

A.過程

B.函數(shù)

C.子程序

D.標識符

13.下列關于算法的特點描述中錯誤的是(D)。

A.有窮性

B.確定性

C.有零個或多個輸入

D.有零個或多個輸出

14.以下選項中不屬于算法特性的是(C)。

A.有窮性

B.確定性

C.簡潔性

D.有效性

15.用C語言編寫的代碼程序(B)。

A.可立刻執(zhí)行

B.是一個源程序

C.經(jīng)過編譯即可執(zhí)行

D.經(jīng)過編譯解釋才干執(zhí)行

二、填空題

1.C語言的源程序必需通過編譯和銜接后,才干被計算機執(zhí)行。

2.C語言源程序文件的后綴是.c;經(jīng)過編譯后,生成文件的后綴是.obj;經(jīng)過銜接后,生成文件的后綴是.exe。

3.C語言從源程序的書寫到上機運行輸出結果要經(jīng)過編輯、編譯、銜接、執(zhí)行四個步驟。

4.結構化程序由挨次結構、挑選結構和循環(huán)結構三種基本結構組成。

5.C語言源程序的基本單位是函數(shù)。

6.一個C語言源程序是由若干函數(shù)組成,其中至少應含有一個主函數(shù)(或main函數(shù))。

7.在一個C語言源程序中,解釋部分兩側的分界符為/*…*/。

8.算法是程序設計的靈魂。

9.C語言程序只能從main函數(shù)開頭執(zhí)行。

10.自然語言、流程圖和偽代碼都可以用來表示算法,其中流程圖是算法的圖形化表示辦法。

三、編程/思量題

1.簡述C語言的主要特點。

1.C語言的主要特點有:(1)C語言具有結構化的高級編程語言應有的全部高級指令,使程序員不需要知道硬件細節(jié)。同時,C也具有一些低級指令,允許程序員能夠直接迅速地拜訪硬件。(2)C語言是結構式語言。(3)C語言是一種高效的語言。(4)C語言簡潔緊湊,使用便利靈便。(5)C語言運算符豐盛。(6)C語言是一種可移植性語言。

2.要得到一個可以正常運行的C語言程序,普通經(jīng)過哪幾個過程?

編輯C語言程序源代碼,編譯源文件,銜接程序,執(zhí)行程序。

3.算法具有哪些特點?

3.算法具有以下特點:(1)有窮性;(2)確定性;(3)有零個或多個輸入;(4)有一個或多個輸出;(5)有效性。

4.用流程圖表示求解1×2×3×4×5的算法。

5.參照本章例題,編寫一個C程序,輸出以下信息:

*********************************

ThisisasimpleCprogram!

答.#include

voidmain()

{

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

printf("ThisisasimpleCprogram!\n");

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

習題二

一、挑選題

1.下列幾個選項中,屬于C語言的基本數(shù)據(jù)類型的是(B)。

A.整型、實型、結構體類型

B.整型、實型、字符型

C.整型、規(guī)律型、實型

D.整型、字符型、數(shù)組類型

2.C語言規(guī)定,標識符的命名只能由字母、數(shù)字和下劃線三種字符組成,且第一個字符(C)。

A.必需是字母

B.必需是下劃線

C.必需是字母或下劃線

D.必需是數(shù)字

3.下列標識符中,合法的標識符為(B)。

A.6adc

B._max1

C.a*$bn

D.123bc

4.下列標識符中,不合法的標識符為(A)。

A.int

B._n5

C.i_5ab

D.q5n

5.下列不合法的字符常量是(D)。

A.‘a(chǎn)’

B.’\”’

C.’\n’

D.”a”

6.下列不合法的字符串常量是(A)。

A.‘a(chǎn)bc’

B.”abc”

C.”dfb345”

D.””

7.下列不合法的轉義字符是(D)。

A.‘\\’

B.‘\t’

C.‘\x6a’

D.’\89’

8.下面四個選項中,均是不合法的轉義字符的選項是(B)。

A.‘\’’‘\t’‘\’

B.‘\1234’‘\018’‘\x3h’

C.‘\n’‘\16’‘\”‘

D.‘\x8a’‘\&’‘\101’

9.下列整型常量中,不合法的是(D)。

A.89

B.-16

C.0x4b

D.0668

10.下面四個選項中,均是不合法的整型常量的選項是(A)。

A.-0f10182e5

B.250xf33.5

C.065-54-0a4

D.0130xk5-069

11.下列實型常量中,不合法的是(C)。

A.0.0

B..123

C.123

D.2.34

12.下列實型常量中,合法的是(D)。

A.e3

B.2e4.3

C.–e4

D.2e-4

13.下面四個選項中,均是不合法的實型常量的選項是(B)。

A.3e5.40.02e5

B.e55e2.568

C.3.142e-4123e-5

D.0.98-e-3123e

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

A.由用戶自己定義

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

C.是隨意的

D.由所使用的編譯系統(tǒng)打算

15.若有說明語句:charc=’\72’;則變量c(A)。

A.包含1個字符

B.包含2個字符

C.包含3個字符

D.說明不合法,c的值不確定

16.設變量a是整型,f是實型,i是雙精度型,則表達式10+’a’+i*f值的數(shù)據(jù)類型為(C)。

A.int

B.float

C.double

D.不確定

17.設有說明語句:charw;intx;floaty;doublez;則表達式w*x+z-y值的數(shù)據(jù)類型為(D)。

A.float

B.char

C.int

D.double

18.在C語言中,負整數(shù)在內(nèi)存中的存儲形式是(A)。

A.補碼

B.反碼

C.原碼

D.ASCII碼

19.在C語言中,字符型數(shù)據(jù)在內(nèi)存中的存儲形式是(D)。

A.補碼

B.反碼

C.原碼

D.ASCII碼

20.在C語言中,實型數(shù)據(jù)在內(nèi)存中的存儲形式是(B)。

A.小數(shù)形式

B.指數(shù)形式

C.十進制形式

D.ASCII碼

21.在C語言中,設一個short型數(shù)據(jù)在內(nèi)存中占用2個字節(jié)存儲,則unsignedshort型數(shù)據(jù)的取值范圍為(C)。

A.0~255

B.0~32767

C.0~65535

D.0~2147483647

22.在C語言中,設一個float型數(shù)據(jù)在內(nèi)存中占用4個字節(jié)來存儲,則一個float型數(shù)據(jù)的有效數(shù)字位數(shù)為(B)。

A.5位

B.6~7位

C.15~16位

D.18~19位

23.已知小寫字母’a’的ASCII碼為十進制數(shù)97,則執(zhí)行語句c=’a’+2后,變量c中的字符為(B)。

A.A

B.c

C.C

D.b

24.設有定義floatx=3.5;則執(zhí)行(int)x之后,x的值為(A)。

A.3.500000

B.3

C.4

D.3.0

25.若想確定所使用的編譯系統(tǒng)中,int型數(shù)據(jù)所占用的存儲寬度,可使用(B)舉行測試。

A.(int)

B.sizeof(int)

C.(int)x

D.(sizeof)int

二、填空題

1.C語言中的實型變量分為兩種類型,它們是float和double。

2.C語言中的常量分為一般常量和符號常量兩種類型

3.C語言中的標識符只能由3種字符組成,他們是字母、數(shù)字、下劃線、和。

4.在C語言中,有一類特別字符以“\”開始,稱為轉義字符。轉義字符’\n’的功能是回車換行;轉義字符’\r’的功能是,回車不換行。

5.在C語言中,用關鍵字float定義單精度實型變量,用關鍵字DOUBLE定義雙精度實型變量,用關鍵字char定義字符型變量。

6.要定義雙精度實型變量a和b,并使它們的初值都為5.6,則定義語句為doube

a=5.6,b=5.6;。

7.設C語言中一個short型數(shù)據(jù)占用2個字節(jié)存儲,一個int型數(shù)據(jù)占用4個字節(jié)存儲,則要將數(shù)值32768正確無誤的存儲在變量x中,應使用的定義語句為intx=32768。

8.若有定義charch;則執(zhí)行ch=’A’+32后,變量ch中的字符為‘a(chǎn)’。

9.以下程序運行后的輸出結果是9,90。

#include

voidmain()

{

intx=011,y=0x5a;

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

}

10.以下程序的輸出結果是Beijing

China。

#include

voidmain()

{

printf("Beijing\nChina\n",n);

}

三、思量題

1.C語言規(guī)定對全部用到的變量必需“先定義,后使用”,這樣做有什么益處?

1.解:C語言中,要求對全部用到的變量“先定義,后使用”,這樣做的益處是:能夠保證程序中變量名使用得正確;在編譯時就能為變量分配相應的存儲單元;便于在編譯過程中檢查對該變量舉行的運算是否合法。

2.字符常量和字符串常量有什么區(qū)分?

2.解:字符常量是一個字符,在程序中是用單撇號括起來的;字符串常量由0個或若干個字符組合而成,在程序中是用雙撇號括起來的,在存儲時,系統(tǒng)自動在字符串最后加上一個字符串結束符’\0’。

3.若想要將一個大寫字母轉換為對應的小寫字母,可以如何操作?

3.解:在內(nèi)存中,字符型數(shù)據(jù)以ASCII碼存儲,ASCII碼是一串二進制編碼,每個字符的ASCII碼對應一個整數(shù)值,大寫字母與其對應小寫字母的ASCII碼對應整數(shù)值相差32。因此,要將一個大寫字母轉換為小寫字母,只需將該變量的值加上32即可。

4.常量’a’與”a”在內(nèi)存中所占用的字節(jié)數(shù)是否相同?為什么?

4.解:常量’a’與”a”在內(nèi)存中所占用的字節(jié)數(shù)不相同,由于’a’是字符常量,在內(nèi)存中占用一個字節(jié)存儲,而”a”是字符串常量,在內(nèi)存中存儲時,系統(tǒng)自動在其后加上一個字符串結束符’\0’,在內(nèi)存中占用2個字節(jié)存儲。

5.若有定義inta;floatf,則表達式’c’+a+f的結果為何種數(shù)據(jù)類型?為什么?

5.若有定義inta;floatf,則表達式’c’+a+f的結果為double型。由于表達式中f為float型,在計算之前必需先轉換為double型,按照數(shù)據(jù)類型的自動轉換規(guī)章,表達式的結果為double型。

6.設C語言中,一個short型數(shù)據(jù)占用2個字節(jié)存儲,若有定義shortx=-12,則變量x的值-12在內(nèi)存中存儲的二進制代碼是如何表示的?

6.解:整數(shù)在內(nèi)存中以補碼形式存儲,負數(shù)的補碼為反碼+1,所以,當x=-12時,其在內(nèi)存中的存儲形式為:1111111111110100。

7.設C語言中,一個short型數(shù)據(jù)占用2個字節(jié)存儲,若有定義shortx=32768,則用輸出語句printf(”%d\n”,x);輸出x值為多?為什么?

7.解:輸出結果為-32768,由于一個short型數(shù)據(jù)在內(nèi)存中占用2個字節(jié)存儲,所能表示的數(shù)值范圍為-32768~32767,當x=32768時,超出了其能表示的范圍,發(fā)生了溢出,數(shù)值32768的二進制編碼的16位正巧對應數(shù)值-32768。

8.若有x為int型變量,則執(zhí)行x=3.14后,變量x的值為多少?為什么?

8.解:若有x為int型變量,則執(zhí)行x=3.14后,變量x的值為3,由于x為int型變量,不能存儲實型數(shù)據(jù),當把一個實型數(shù)據(jù)賦給x時,發(fā)生了數(shù)據(jù)類型轉換,系統(tǒng)自動把實型數(shù)據(jù)的小數(shù)部分舍去。

9.分析下面兩個程序運行結果是否相同?為什么?

程序A:#include程序B:#include

voidmain()voidmain()

{{

charc1,c2;intc1,c2;

c1=’a’;c1=97;

c2=’b’;c2=98;

printf(“%c,%c\n”,c1,c2);printf(“%c,%c\n”,c1,c2);

}}

9.解:兩個程序的運行結果相同。由于字符型數(shù)據(jù)以ASCII碼存儲,ASCII碼是一串二進制

編碼,每個字符的ASCII碼對應一個整數(shù)值。因此,在一定范圍內(nèi),整型數(shù)據(jù)和字符型數(shù)據(jù)是可以通用的。字符’a’和’b’對應的ASCII編碼值分離為97,98。

10.分析下面程序的運行結果:

#include

voidmain()

{

charc1='A',c2='B',c3='C',c4='\101',c5='\x42';

printf("a%cb%c\tc%c\tabc\n",c1,c2,c3);

printf("%c\t%c\bB\n",c4,c5);

aAbB□□□□cC□□□□□□abc

A□□□□□□□BB

}

習題三

一、挑選題

1.若有代數(shù)式bcae

3,則不正確的C語言表達式是(C)。

A.a/b/c*e*3

B.3*a*e/b/c

C.3*a*e/b*c

D.a*e/c/b*3

2.在C語言中,要求運算數(shù)必需是整型的運算符是(D)。

A./

B.=

C.++

D.%

3.若有定義語句:inta=7;floatx=2.5,y=4.7;則表達式x+a%3*(int)(x+y)%2/4的值(A

)。A.2.500000B.2.750000C.3.500000D.0.000000

4.若有定義intx=5,y=2,則表達式5/2的結果為(B)。

A.2.5

B.2

C.2.0

D.3

5.推斷char型變量ch是否為大寫字母的正確表達式是(C)。

A.‘A’=’A’)&(ch=’A’)&&(ch=’A’)and(ch=b>=c

B.(a>=b)&(b>=c)

C.(a>=b)&&(b>=c)

D.(a>=b)||(b>=c)

7.規(guī)律運算符兩側運算對象的數(shù)據(jù)類型(D)。

A.只能是0或1

B.只能是0或非0正數(shù)

C.只能是整型或字符型

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

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

A.=y則執(zhí)行表達式(m=a>b)

a=d/100%9;

b=(-1)

printf(“%d,%d\n”,a,b);

}

A.6,1

B.2,1

C.6,0

D.2,0

16.執(zhí)行以下語句后x的值為,y的值為(C)。

intx=5,y=6,t=1,a=2,b=3,z=4;

(x=t>a)&&(y=b>z)

A.5,6

B.5,0

C.0,6

D.0,0

17.以下表達式中,與表達式!a等價的是(D)。

A.a==0

B.a==1

C.!a==0

D.!a==1

18.以下符合C語言語法的賦值表達式是(D)。

A.a=10+n+m=a+3

B.a=10+m,b=a+5

C.b=b*8=2

D.a+=a-=(m=4)*(n=3)

19.若有inta=7,b=12,則以下表達式中,值為3的是(D)。

A.b%=(a%=5)

B.b%=(a-a%5)

C.b%=a-a%5

D.(b%=a)-(a%=5)

20.已知各變量的類型說明如下。

inta=2,b;

doublex=2.56;

則以下不符合C語言語法的表達式是(A)。

A.x%(-3)

B.a+=2

C.a+=a-=(b=4)

D.x/=(b=3)21.設以下變量均為int類型,則值不等于7的表達式是(C)。

A.(x=y=6,x+y,x+1)

B.(x=y=6,x+y,y+1)

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

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

22.若x,i,j,k都是int型變量,則執(zhí)行表達式x=(i=4,j=16,k=32)后,x的值為(C)。

A.4

B.16

C.32

D.52

23.執(zhí)行下面程序段后,輸出結果為(C)。

intx=13,y=5;printf(“%d”,x%=(y/2));

A.3

B.2

C.1

D.0

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

A.x=0.0

B.y=(x%2)/10;

C.x*=y+8;

D.x=y=0;

25.設inta=10,則執(zhí)行語句a+=a*=a/5+10;后,a的值是(A)。

A.240

B.120

C.30

D.60

26.設有定義語句intx=2;則以下表達式中,值不為6的是(D)。

A.x*=x+1

B.x=2,3*x

C.x*=(1+x)

D.2*x,x+=2

27.已知變量x、y、z都為int型,則執(zhí)行z=2+(y=1,y+=1,x=y,x+8)后,x和z的值分離為(A)。

A.x=2,z=12

B.x=2,z=10

C.x=10,z=12

D.x=10,z=10

28.若w=1,x=2,y=3,z=4,則條件表達式w

voidmain()

{

intx,y;

scanf(“%d”,

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

printf(“%d\n”,y);

}

A.0

B.22

C.12

D.10

31.若已知num、sum均為int型變量,且num=sum=7;則計算表達式sum=num++,sum++后,sum的值為(B)。

A.7

B.8

C.9

D.10

32.若有intx=11,則表達式(x++*1/

溫馨提示

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

評論

0/150

提交評論