《高級語言程序設(shè)計》測試題_第1頁
《高級語言程序設(shè)計》測試題_第2頁
《高級語言程序設(shè)計》測試題_第3頁
《高級語言程序設(shè)計》測試題_第4頁
《高級語言程序設(shè)計》測試題_第5頁
已閱讀5頁,還剩56頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

《高級語言程序設(shè)計》

一、判斷題(錯誤得在后面寫“F”,正確得寫“T”,每題1分)

1、程序就是描述算法得編程工具。

2、化將函數(shù)模板與某個具體數(shù)據(jù)類型連用,就產(chǎn)生了模板函數(shù),稱這個過程為

函數(shù)模板實例化。

3、C++語言中,用來為對象初始化得特殊成員函數(shù)稱為構(gòu)造函數(shù);用于在對象撤

銷時執(zhí)行一些清理任務得特殊成員函數(shù)稱為析構(gòu)函數(shù)。

4、逐條翻譯并執(zhí)行得翻譯程序稱為編譯程序

5、把所有類組織在一個樹形結(jié)構(gòu)中,這時所有類,不管它們之間得差別有多大,

都有一個共同得相關(guān)類,這種結(jié)構(gòu)被稱為類樹.類群就是由一些彼此密切相關(guān)得

類與類族組成得.

6、如果在定義一個類時,該類繼承了多個基類得特征,那么這個繼承關(guān)系稱為

多重繼承。

7、不同對象可以調(diào)用相同名稱得函數(shù),并可導致完全相同得行為得現(xiàn)象稱為多態(tài)

性。

8.形式參數(shù)表就是用括號分隔得變量說明列表,變量稱為函數(shù)得形式參數(shù),有時也

簡稱為形參。

9、.在C++語言中,只要在聲明函數(shù)原型時形式參數(shù)得個數(shù)或者對應得類型不同,

兩個或更多得函數(shù)就可以共用同一個名字。這種在同一作用域中允許多個函數(shù)

使用同一函數(shù)名得措施被稱為重載。

9.C++得作用域分辨:可以迫使編譯器“瞧到”當前作用域得外層部分,存取那些被

隱藏得名字.這就是由作用域分辨操作符實現(xiàn)得,這一過程叫做作用域分辨。

11.說明函數(shù)原型時不需要指明每個函數(shù)參數(shù)得名字,只需要說明每個參數(shù)得類

型與返回值類型就可以了。

12.所有得表達式都有值.

13.程序得編譯就是以文件為單位得,因此將程序分到多個文件中可以減少每次對

程序修改所帶來得編譯工作量.

14o類得靜態(tài)數(shù)據(jù)成員需要在定義每個類得對象時進行初始化。

15o基類中被說明為protected與private得成員只能被其派生類得成員函數(shù)訪問,

不能被其它得函數(shù)訪問。

16.當將一個類S定義為另一個類A得友元類時,類S得所有成員函數(shù)都可以直

接訪問類A得所有成員。

17.當函數(shù)得返回值就是數(shù)組類型得,傳遞得就是數(shù)組第一個元素得地址。

18.如果派生類得成員函數(shù)得原型與基類中被定義為虛函數(shù)得成員函數(shù)原型相

同,那么,這個函數(shù)自動繼承基類中虛函數(shù)得特性。

19o字符串,he1lo,world”在內(nèi)存中存放時,占用11個字節(jié)得空間。

20、用new動態(tài)申請得內(nèi)存空間,必須用delete來釋放。

21、變量必須先定義或說明,后說明。

23、常量不能作為左值使用。

23、頭文件中一般存放著變量與常量得定義、函數(shù)得原型以及類得定義。

24、類得友元函數(shù)可以直接訪問該類得所有成員。

25、派生類得成員函數(shù)可以直接訪問基類得所有成員。

26、一個類可以作為另一個類得友元類。

27、函數(shù)得參數(shù)與返回值類型可以就是簡單數(shù)據(jù)類型,也可以就是指什、引用、數(shù)

組與類。

28、在基類中被說明為虛函數(shù)得類得成員函數(shù)必須在每個派生類中說明為虛函數(shù),

才能具有多態(tài)得特征。

29、下面兩個語句就是等價得:

charstr[]="hel1o,worid”;

charstr[11]=zzhello,worId";

30、用new動態(tài)申請得內(nèi)存就是在堆中分配得,而不就是在棧中分配得。

31、靜態(tài)聯(lián)編所支持得多態(tài)性稱為編譯時得多態(tài)性。

32、如果一個類中至少有一個實函數(shù),則稱這個類為抽象類。

33、用于在對象消失時執(zhí)行一些清理任務得函數(shù)叫虛函數(shù).

34、C++源程序文件得缺省擴展名為cpp

35、由C++源程序文件編譯而成得目標文件得缺省擴展名為lik

36、由C++目標文件連接而成得可執(zhí)行文件得缺省擴展名為。bj

37、編寫C++程序一般需經(jīng)過得幾個步驟依次就是編輯、編譯、連接、調(diào)試

38、標識符defaultthenwhile全就是保留字

39、能作為C++程序得基本單位就是語句

40、程序中主函數(shù)得名字為任意標識符

二、填空題(每題3分)A1、假定x=5,y=6,則執(zhí)行表達式y(tǒng)+=x--計算后,x

與y得值分別為與0

2、C++常數(shù)0x145對應得十進制值為o

3、C++常數(shù)0345對應得十進制值為0

4、十進制常數(shù)245對應得十六進制得C++表示為o

5、十進制常數(shù)245對應得八進制得C++表示為o

6、signedchar類型得值域范圍就是_________至_______________之間得整數(shù).

7、int與float類型得數(shù)據(jù)分別占用與個字節(jié).

8、f1oat與doub1e類型得數(shù)據(jù)分別占用與個字節(jié)。

9、bool與char類型得數(shù)據(jù)分別占用與個字節(jié).

11

10、unsignedshortint與int類型得長度分別為與。

11、字符串''This、'sabook、\n"得長度為。

12、字符串、'\nThis\'saPen\n\n”得長度為。

13、在C++中存儲字符串"bcdef”至少需要個字節(jié).

14、在C++中存儲字符串''a+b=c”至少需要個字節(jié)。

14.假定x與y為整型,其值分別為16與5,則x%y與x/y得值分別為與

15.若while循環(huán)得“頭"為“while(i++<=l0)”,并且i得初值為0,同時在循環(huán)體中不會修

改i得值,則循環(huán)體將被重復執(zhí)行次后正常結(jié)束。

17、若d。循環(huán)得“尾”為〃whi1e(++i<10)”,并且i得初值為0,同時在循環(huán)體中不會修

改i得值,則循環(huán)體將被重復執(zhí)行次后正常結(jié)束。

18、當在程序中執(zhí)行到語句時,將結(jié)束本層循環(huán)類語句或switch語句得執(zhí)行。

19、當在程序中執(zhí)行到語句時,將結(jié)束所在循環(huán)語句中循環(huán)體得一次執(zhí)行.

20、在程序中執(zhí)行到語句時,將結(jié)束所在函數(shù)得執(zhí)行過程,返回到調(diào)用該函數(shù)得

位置。

21o在程序執(zhí)行完________函數(shù)調(diào)用后,將結(jié)束整個程序得執(zhí)行過程,返回到C++集成開發(fā)窗

口.

22、元素類型為int得數(shù)組a[l0]共占用字節(jié)得存儲空間。

23、元素類型為d。uble得二維數(shù)組a[4][6]共占用字節(jié)得存儲空間。

24、元素類型為char得二維數(shù)組a[10][30]共占用字節(jié)得存儲空間。

25、存儲字符’a,與字符串"a”分別需要占用與個字節(jié)。

26、空串得長度為,存儲它需要占用個字節(jié)。

27、字符串“\'a\,xy=4\n"得長度為。

28、字符串"a:Wxxk\\數(shù)據(jù)"得長度為一.

29、用于存儲一個長度為n得字符串得字符數(shù)組得長度至少為.

30、若a就是一個字符數(shù)組,則從鍵盤上向該數(shù)組輸入一個字符串得表達式為—.

31、C++就是將源程序,然后再執(zhí)行,這種翻譯程序稱為編譯程序.

32、聯(lián)合得若干數(shù)據(jù)成員使用地址,占據(jù)得內(nèi)存就是聯(lián)合中占內(nèi)存最大得數(shù)據(jù)成

員所占用得內(nèi)存。

33、作用域分辨操作符得一般形式為類名::類標識符,作用域分辨不僅可用于類中,而

且可以用在______時。

34、將關(guān)鍵詞const寫在之后,,之前,說明該函數(shù)就是一個const

成員函數(shù)。

35、C++就是在得基礎(chǔ)上,引入面向?qū)ο蟾拍疃鴶U充形成得混合型面向?qū)?/p>

象語言。

36、在動態(tài)聯(lián)編中,直到時才能確定調(diào)用哪個函數(shù)。靜態(tài)聯(lián)編就是在程序編譯

時進行得。

37、類型轉(zhuǎn)換函數(shù)帶有參數(shù),當被派生類繼承并被說明為時,可

以定義多個轉(zhuǎn)換函數(shù)。

38、繼承就是得一個特點,繼承支持類概念。

39、C++得規(guī)則能保證編譯器調(diào)用正確得成員函數(shù).

40、在C++中,聲明構(gòu)造函數(shù)與析構(gòu)函數(shù)時,使用const或volatile關(guān)鍵詞。

41、只能用類運算符來重載得運算符就是:,,,o

42、應該養(yǎng)成將所有extern說明放到中去得習慣,對于自己編寫得函數(shù),必

須自己給出說明。

43、結(jié)構(gòu)就是,得一種特例,其中成員在缺省情況下就是.

44、當使用delete刪除一個對象時,delete隱含著對函數(shù)得一次調(diào)用,如

果這個函數(shù)為虛函數(shù),則這個調(diào)用采用聯(lián)編.

45、const放在函數(shù)前面使常量成員返回.如果定義一個const對象,則只能訪問該對

象得const成員函數(shù)。

46、在面向?qū)ο蟮贸绦蛟O(shè)計中,一切都就是圍繞著展開得.

47、析構(gòu)造函數(shù)就是與同名得函數(shù).A

48.指向基類得對象得指針變量也可以指向得對象。

49.若多繼承時,多個基類中擁有一個同名得成員,則用調(diào)整訪問權(quán)限確定對

該成員得訪問

50.多繼承情況下,派生類得構(gòu)造函數(shù)得執(zhí)行順序取決于派生類時所指定得各基

類得順序.

51.構(gòu)造函數(shù)—①—被繼承,析構(gòu)函數(shù)②被繼承。

52.—①一繼承情況下,派生類中對基類成員得訪問會出現(xiàn)二義性。解決二義性得方法就是一

_____②、③—與—④—

53.垂直訪問時,保護成員得訪問控制權(quán)限與成員相同。

54?派生類可以調(diào)用其中不具備得數(shù)據(jù)與操作。

550利用繼承能夠?qū)崿F(xiàn)。這種實現(xiàn)縮短了程序得開發(fā)時間,促使開發(fā)人員復用已

經(jīng)測試與調(diào)試好得高質(zhì)量軟件。

56o當撤消一個含有基類與子對象成員得派生類對象時,將首先完成①得析構(gòu)函數(shù)

定義體得執(zhí)行,接著完成②得析構(gòu)函數(shù)定義體得執(zhí)行,最后完成—③—得析

構(gòu)函數(shù)定義體得執(zhí)行。

57.如果類Alpha繼承了類Beta,則類Alpha稱為—①—類,類Beta稱為_②類

58.對基類數(shù)據(jù)成員得初始化必須在派生類構(gòu)造函數(shù)中得處執(zhí)行.

59.在派生類中使用基類得成員,可以顯示地使用來使用基類成員

60.當將基類指針轉(zhuǎn)換為派生類指針時,由于編譯器認為這種操作就是危險得,所以必須要使用

61.多繼承可以視為就是一①得擴展,派生類及其基類可用一個—②—表示.

62、繼承就是①—得一個特點,繼承支持—②一類概念。

63.若需要定義一個標識符常量,并且使C++能夠進行類型檢查,則應在定義語句得開始使用保

留字-

64.邏輯表達式x>3&&x<10得相反表達式為

65。邏輯表達式a〉b||b==5得相反表達式為、

66.假定一個二維數(shù)組得定義為“chara[5][6];",則該數(shù)組所含元素得個數(shù)為,所

占存儲空間得字節(jié)數(shù)為、

67?變量分為全局與局部兩種,變量沒有賦初值時,將由系統(tǒng)自動置為0、

68。假定a就是一個一維數(shù)組,則a[i]對應得存儲地址(以字節(jié)為單位)為

69.假定一個結(jié)構(gòu)類型得定義為“structA{inta,b;A*c;};",則該類型得大小為

字節(jié)、

70.假定要訪問一個結(jié)構(gòu)指針p所指對象中得b指針成員所指得對象,則表示方法

為、

三、單選題(每題2分,在下列各題得備選答案中,選出一個正確答案,并將其號碼填寫在題目后面

得括號內(nèi)。)

1、C++源程序文件得缺省擴展名為().

A、cppB、exeC、objD、lik

2、由C++源程序文件編譯而成得目標文件得缺省擴展名為()。

A、cppB、exeC、objD>lik

3、由C++目標文件連接而成得可執(zhí)行文件得缺省擴展名為()o

A、cppB、exeC、objD、lik

4、編寫C++程序一般需經(jīng)過得幾個步驟依次就是()o

A、編譯、編輯、連接、調(diào)試

B、編輯、編譯、連接、調(diào)試

C、編譯、調(diào)試、編輯、連接

D、編輯、調(diào)試、編輯、連接

5、以下標識符中不全就是保留字得就是()o

A、caseforint

B、defau1tthenwhile

C、boolclasslong

D、gotoreturnchar

6、能作為C++程序得基本單位就是()o

A、字符B、語句C、函數(shù)D、源程序文件

7、程序中主函數(shù)得名字為().

A.mainB、MAINC、MainD、任意標識符

8、C++程序得基本模塊為()o

A、表達式B、標識符C、語句D、函數(shù)

9、可用作C++語言用戶標識符得一組標識符就是()o

A、voiddefine+W0RD

B、a3_b3123YN

C、for—abcCase

D、2aDOsizeof

10、存儲以下數(shù)據(jù),占用存儲字節(jié)最多得就是()o

A、0B、'O'C、"0”D、0、0

11、程序運行中需要從鍵盤上輸入多于一個數(shù)據(jù)時,各數(shù)據(jù)之間應使用()符號作

為分隔符。

A、空格或逗號B、逗號或回車C、逗號或分號D、空格

或回車

12、設(shè)“inta=12;”,則執(zhí)行完語句〃a+=a*a后,a得值就是().

A、12B、144C、156D、288

13、假設(shè)在程序中a、b、c均被定義成整型,所賦得值都大于1,則下列能正確表示代數(shù)式得

表達式就是()o

A、1、0/a*b*cB、l/(a*b*c)C、1/a/b/(float)cD、

1、0/a/b/c

14、設(shè)〃inta=15,b=26;%則〃cout<<(a,b);”得輸出結(jié)果就是()。

A、15B、26,15C、15,26D、26

15、設(shè)x就是一個bool型得邏輯量,y得值為10,則表達式x&&y得值為()o

A、1B、0C、與x值相同D、與x值相反

16>x>0&&x<二10得相反表達式為().

A、x(=0IIx>10B、x(=0&&x)10

C、x<=0I|x<=10D、x)0&&x)10

17、x)0|Iy=5得相反表達式為()o

A、x(=0||y!=5B、x〈=0&&y!=5

C、x>0||y!=5D、x>0&&y==5

18.設(shè)x與y均為bool量,則x&&y為真得條件就是()。

A、它們均為真B、其中一個為真

c、它們均為假D、其中一個為假

19.設(shè)x與y均為bool量,則xIIy為假得條件就是()。

A、它們均為真B、其中一個為真

C、它們均為假D、其中一個為假

20、字符串〃a+b=l2\n”得長度為()o

A、6B、7C、8D、9

21、假定下列x與y均為int型變量,則不正確得賦值為()o

A、x+=y++B、x++=y++C、x=++yD、++x=+

+y

22、下列得符號常量定義中,錯誤得定義就是()o

A、constM=10;B、constintM=20;

C、constcharch;D、constboo1mark=true;

23、循環(huán)語句“for(inti=0;i<n;i++)cout<<i*i<〈'丁”中循環(huán)體執(zhí)行

得次數(shù)為()o

A、1B、n-1C、nD、n+1

24、在下面循環(huán)語句中循環(huán)體執(zhí)行得次數(shù)為()o

for(inti=0;i<n;i++)

if(i>n/2)break;

A、n/2B、n/2+1C、n/2-1D、n-1

25、在下面循環(huán)語句中內(nèi)層循環(huán)體S語句得執(zhí)行總次數(shù)為()o

for(inti=0;i<n;i++)

for(intj=i;j<n;j++)S;

A、n2B、(n+1)/2C、n(n-1)/2D、n(n+1)/2

26、在下面循環(huán)語句中循環(huán)體執(zhí)行得次數(shù)為()o

inti=0,s=0;while(s<20){i++;s+=i;}

A、4B、5C、6D、7

27、在下面循環(huán)語句中循環(huán)體執(zhí)行得次數(shù)為()o

inti=0;doi++;whi1e(i*iV10);

A、4B、3C、5D、2

28、當處理特定問題時得循環(huán)次數(shù)已知時,通常采用()來解決。

A、for循環(huán)B、while循環(huán)C、do循環(huán)D、switch語

29、循環(huán)體至少被執(zhí)行一次得語句為().

A、for循環(huán)B、while循環(huán)C、do循環(huán)D、任

一種循環(huán)

30、switch語句能夠改寫為()語句.

A、forB、ifC、doD、while

31、do語句能夠改寫為()語句。

A、復合B、ifC、switchD、while

32、在下面得一維數(shù)組定義中,哪一個有語法錯誤。)

A、inta[]={1,2,3);B、inta[10]={0};

C、inta[];D、inta[5];

33、在下面得字符數(shù)組定義中,哪一個有語法錯誤。()O

A、chara[20]="abcdefg";B、chara[]="x+y=55、

C、chara[15];D、chara[10]5';

34、在下面得二維數(shù)組定義中,正確得就是()。

A、inta[5][];B、inta[][5]

C、inta口[3]={{1,3,5},{2}};D、inta[](10)

35、假定一個二維數(shù)組得定義語句為“inta[3][4]={{3,4},⑵8,6}};”,則元素

a[1][2]得值為().

A、2B、4C、6D、8

36、假定一個二維數(shù)組得定義語句為“inta[3][4]={{3,4},{2,8,6}};”,則

元素a[2][1]得值為()。

A、0B、4C、8D、6

37、若定義了函數(shù)doub1e*function0,則函數(shù)function得返回值為().

A、實數(shù)型B、實數(shù)得地址C、指向函數(shù)得指針D、函數(shù)得地址

38、以下說法中正確得就是()。

A、C++程序總就是從第一個定義得函數(shù)開始執(zhí)行

B、C++程序總就是從main函數(shù)開始執(zhí)行

C、C++函數(shù)必須有返回值,否則不能使用函數(shù)

D、C++程序中有調(diào)用關(guān)系得所有函數(shù)必須放在同一個程序文件中

39、以下敘述中不正確得就是()。

A、在一個函數(shù)中,可以有多條return語句

B、函數(shù)得定義不能嵌套,但函數(shù)得調(diào)用可以嵌套

C、函數(shù)必須有返回值

D、不同得函數(shù)中可以使用相同名字得變量

40、函數(shù)重載就是指()。

A、兩個或兩個以上得函數(shù)取相同得函數(shù)名,但形參得個數(shù)或類型不同

B、兩個以上得函數(shù)取相同得名字與具有相同得參數(shù)個數(shù),但形參得類型可以不同

C、兩個以上得函數(shù)名字不同,但形參得個數(shù)或類型相同

D、兩個以上得函數(shù)取相同得函數(shù)名,并且函數(shù)得返回類型相同

41、以下關(guān)于函數(shù)模板敘述正確得就是().

A、函數(shù)模板也就是一個具體類型得函數(shù)

B、函數(shù)模板得類型參數(shù)與函數(shù)得參數(shù)就是同一個概念

C、通過使用不同得類型參數(shù),函數(shù)模板可以生成不同類型得函數(shù)

D、用函數(shù)模板定義得函數(shù)沒有類型

42、下列()得調(diào)用方式就是引用調(diào)用。

A、形參與實參都就是變量B、形參就是指針,實參就是地址值

C、形參就是引用,實參就是變量D、形參就是變量,實參就是地址值

43、為了提高程序得運行速度,可將不太復雜得功能用函數(shù)實現(xiàn),此函數(shù)應選擇()。

A、內(nèi)聯(lián)函數(shù)B、重載函數(shù)C、遞歸函數(shù)D、函數(shù)模板

44、函數(shù)原型語句正確得就是()。

A、intFunction(voida);B、voidFunction(int);

C、intFunction(a);D、voidint(doublea);

45、C++中函數(shù)返回值得類型就是由()決定得。

A、return語句中表達式得類型B、該函數(shù)定義時得類型

C、調(diào)用函數(shù)時得調(diào)用語句D、系統(tǒng)根據(jù)結(jié)果

46、以下函數(shù)得返回結(jié)果就是()。

intfunction(char*x){

char*p=x;while(*p++);return(p-x—1);

}

A、求字符串得長度B、將字符串x連接到字符串p后面

C、將字符串x復制到字符串p中D、將字符串x反向存放

47、函數(shù)調(diào)用func((expl,exp2),(exp3,exp4,exp5))中所含實參得個數(shù)為()

個。

A、1B、2C、4D、5

48、設(shè)有如下函數(shù)定義

intf(char*s){

char*p=s;

while(*p!=,\05)p++;

return(p-s);

)

在主函數(shù)中用cout〈〈f("good")調(diào)用上述函數(shù),則輸出結(jié)果為()。

A、3B、4C、5D、6

49、以下正確得函數(shù)原型語句就是().

A、doublefun(intx,inty)

B、doublefun(intx;inty)

C、doublefun(int,int);

D、doublefun(intx,y);

50、以下正確得說法就是()o

A、用戶調(diào)用標準庫函數(shù)前,必須重新定義

B、用戶可以重新定義標準庫函數(shù),若如此,該函數(shù)將失去原有含義

C、系統(tǒng)不允許用戶重新定義標準庫函數(shù)

D、用戶調(diào)用標準庫函數(shù)前,不必使用預編譯命令將該函數(shù)所在文件包括到用戶源文

件中

51、函數(shù)調(diào)用不可以().

A、出現(xiàn)在一個表達式中

B、出現(xiàn)在執(zhí)行語句中

C、作為一個函數(shù)得實參

D、作為一個函數(shù)得形參

52、以下正確得描述就是()。

A、函數(shù)得定義可以嵌套,函數(shù)得調(diào)用不可以嵌套

B、函數(shù)得定義不可以嵌套,函數(shù)得調(diào)用可以嵌套

C、函數(shù)得定義與函數(shù)得調(diào)用均可以嵌套

D、函數(shù)得定義與函數(shù)得調(diào)用均不可以嵌套

53、若用數(shù)組名作為函數(shù)調(diào)用得實參,傳遞給形參得就是()。

A、數(shù)組得首地址B、數(shù)組中第一個元素得值

C、數(shù)組全部元素得值D、數(shù)組元素得個數(shù)

54、以下錯誤得描述就是()o

A、被調(diào)用函數(shù)中可以不用return語句

B、被調(diào)用函數(shù)中可以用多個return語句

c、被調(diào)用函數(shù)中,如果有返回值,就一定要有return語句

D、被調(diào)用函數(shù)中,一個return語句可返回多個值給調(diào)用函數(shù)

55、以下正確得描述就是()。

A、不允許設(shè)置參數(shù)得默認值

B、設(shè)置參數(shù)得默認值只能在定義函數(shù)時設(shè)置

C、設(shè)置參數(shù)得默認值時,應該設(shè)置右邊得參數(shù)

D、設(shè)置參數(shù)得默認值時,應該全部參數(shù)都設(shè)置

56、采用重載函數(shù)得目得就是()。

A、實現(xiàn)共享B、減少空間

C、提高速度D、使用方便,提高可讀性

57、將兩個字符串連接起來組成一個字符串時,選用()函數(shù).

A、strlenOB、strcap()C、strcat()D、strcmp()

58、以下敘述中正確得就是().

A、使用#define可以為常量定義一個名字,該名字在程序中可以再賦另外得值

B、使用c。nst定義得常量名有類型之分,其值在程序運行時就是不可改變得

C、在程序中使用內(nèi)聯(lián)函數(shù)使程序得可讀性變差

D、在定義函數(shù)時可以在形參表得任何位置給出缺省形參值

59、下面得標識符中,()就是文件級作用域.

A、函數(shù)形參B、語句標號C、外部靜態(tài)類標識符D、自動類標識符

60、以下敘述不正確得就是()。

A、宏替換不占用運行時間B、宏名無類型

C、宏替換只就是字符替換D、宏名必須用大寫字母表

61、C++語言得編譯系統(tǒng)對宏命令得處理就是()。

A、在程序運行時進行

B、在程序連接時進行

C、與C++程序得其它語句同時進行編譯

D、在對源程序中其它成分正式編譯之前進行

62、當#inc1ude后面得文件名用雙引號括起來時,尋找被包含文件得方式就是().

A、直接按系統(tǒng)設(shè)定得標準方式搜索目錄

B、先在源程序所在目錄搜索,再按系統(tǒng)設(shè)定得標準方式搜索目錄

C、僅僅搜索源程序所在目錄

D、搜索當前邏輯盤上得所有目錄

63、當#include后面得文件名用尖括號括起來時,尋找被包含文件得方式就是()。

A、直接按系統(tǒng)設(shè)定得標準方式搜索目錄

B、先在源程序所在目錄搜索,再按系統(tǒng)設(shè)定得標準方式搜索目錄

C、僅僅搜索源程序所在目錄

D、搜索當前邏輯盤上得所有目錄

64、在下面存儲類中,()對象得可見性與生存期不一致。

A、外部類B、自動類C、內(nèi)部靜態(tài)類D、寄存器類

65、在下面存儲類中,()得對象不就是局部變量。

A、外部靜態(tài)類B、自動類C、函數(shù)形參D、寄存器類

66、關(guān)于局部變量,下面說法正確得就是().

A、定義該變量得程序文件中得函數(shù)都可以訪問

B、定義該變量得函數(shù)中得定義處以下得任何語句都可以訪問

C、定義該變量得復合語句中得定義處以下得任何語句都可以訪問

D、定義該變量得函數(shù)中得定義處以上得任何語句都可以訪問

67、文件包含命令中被包含得文件得擴展名()-

A、必須就是、hB、不能就是、hC、可以就是、h或、cppD、必

須就是、cpp

68、預處理命令在程序中都就是以()符號開頭得.

A、*B、#C、&D、

69、設(shè)array為一個數(shù)組,貝!J表達式sizeof(array)/sizeof(array[0])得結(jié)果為

()。

A、array數(shù)組首地址

B、array數(shù)組中元素個數(shù)

C、array數(shù)組中每個元素所占得字節(jié)數(shù)

D、array數(shù)組占得總字節(jié)數(shù)

70、用new運算符創(chuàng)建一個含10個元素得一維整型數(shù)組得正確語句就是()。

A、int*p=newa[10];B、int*p=newfloat[10];

C、int*p=newint[10];D、int*p=newint[10]={l,2,3,4,

5)

71、下列給字符數(shù)組賦初值時,正確得就是().

A、chars1[]="abcdef”;B、chars2[4]="abcd";

C、chars3[2][3]={"abc","xyz"};D、chars4[4][]={'a','x',

72、設(shè)有定義“staticintdata[5][6];",設(shè)該數(shù)組在靜態(tài)存儲區(qū)中得起始地址為十進

制得100,若每個int型數(shù)占4個字節(jié),則數(shù)組元素data[2][3]得地址為().

A、115B、124C、130D、160

73、假定變量m定義為“intm=7;",則定義變量p得正確語句為()。

A、intp=&m;B、int*p=&m;C、int&p=*m;

D、int*p=m;

74、假定k就是一個double類型得變量,則關(guān)于變量p得正確定義語句為()。

A、doublep=&k;B、int*p=&k;

C、double&p=*k;D、char*p="Thankyou!

75、變量s得定義為“char*s="Hel1oworld!”;",要使變量P指向s所指向得同一個

字符串,則應選?。ǎ﹐

A、char*p=s;B、char*p=&s;C、char*p;p=*s;D、

char*p;p=&s;

76、關(guān)于void指針,下列說法正確得就是().

A、void指針就就是未指向任何數(shù)據(jù)得指針

B、void指針就就是已定義而未初始化得指針

C、指向任何類型數(shù)據(jù)得指針可直接賦值給一個void指針

D、void指針值可直接賦給一個非void指針

77、假定一條定義語句為“inta[10],x,*pa=a;〃,若要把數(shù)組a中下標為3得

元素值賦給x,則不正確得語句為()。

A、x=pa[3];B、x=*(a+3);C、x=a[3];D、

x=*pa+3;

78、假定有定義"intb[10];int*pb;",則不正確得賦值語句為().

A、pb=b;B、pb=&b[0];C、*pb=newint;D、

pb=b[5];

79、假定p就是具有double類型得指針變量,則表達式++p使p得值(以字節(jié)為單位)增加

()o

A、1B、4C、sizeof(double)D、sizeo

f(p)

80、假定p指向得字符串為〃string〃,則cout〈〈p+3得輸出結(jié)果為()。

A、stringB、ringC>ingD>i

四、問答題(每題10分)

1.為什么稱C++語言就是混合型面向?qū)ο蟮谜Z言?

2、下面就是一個聯(lián)合得定義:

ClassCU{

union{

intiva1ue;

floatfva1ue;}

//

);

這就是一個什么聯(lián)合得說明?它說明ivalue與fvalue具有什么關(guān)系?

3.什么就是C++得多態(tài)性?

4.如何通過抽象形成“類”得概念?類得概念來自于什么過程?

5、下面就是類C得定義:

classC:publicA,privateB{

private:

intc;

public:

voidsetC(intx,inty){c=x;setB(y);}

voidshowC(){showB();cout<<c<<end1;}

};

討論類C屬于何種方式得繼承及其派生方法對訪問基類成員得影響.

6、C++得流庫預定義了哪幾個流?與這幾個流所聯(lián)結(jié)得具體設(shè)備就是什么?

7、在使用C++時,就是否應仍然保持C語言得習慣及思維方式?為什么?

8.C++中有哪些機制可以實現(xiàn)命名常量?

9、簡述模板類得動態(tài)特征。

10、簡述靜態(tài)成員得特性,然后就作用域與全局變量進行比較?

11.用指針或引用調(diào)用虛函數(shù)與通過對象訪問虛函數(shù)得區(qū)別就是?

12、多重繼承得構(gòu)造順序一般可分為4步,下面給出這4個步驟:

13、在C++中,應該使用什么語句來動態(tài)分配與釋放內(nèi)存?

14、下面得程序得正確得輸出結(jié)果就是什么?

#include(iostream>h)

#inc1ude<string>h)

classbase{

public:

virtua1char*fun(void)const=0;

);

char*base::fun(void)const

{return"base";}

classderivedkvirtualpublicbase{

publie:

char*fun(void)const{

“return“derivedl";

)

);

classderived2ivirtualpublicbase{

public:

echar*fun(void)const{

3return"derived2”;

6)

};

classsubderived:pub1icderived1,publicderived2{

public:

3char*fun(void)const{

?char*pch;

epch=newchar[strlen(derivedl::fun())+strlen(derived2::fun())+1];

3strcpy(pch,derivedl::fun());

8strcat(pch,derived2::fun());

returnpch;

}

};

voidmain(void){

obase*pb;

pb=newderived1;

scout?pb-)fun()<<endl;

3pb=newderived2;

cout<〈pb—〉fun()<<end1;

pb=newsubderived;

cout<<pb—〉fun()<<end1;

}

15.目前推薦得C++標準十分虛構(gòu)造函數(shù)?

16、友元運算符。bj會被C++編譯器解釋為什么?

17、寫出下面程序得運行結(jié)果。

#include(iostream、h>

#include<iomanip>h)

voidprint(floata[],intcount,intwidth);

voidmain(void){

sfloatf[2]={1、Of,10、Of};

Qcout<<??Defau1tnumericformat:"<<endl;

print(f,2,10);

ecout<〈"Settingios::showpoint:n?end1;

cout>setf(ios::showpoint);

print(f,2,10);

ecout>unsetf(ios::showpoint);

ocout〈〈“Settingios::scientific:”(<endl;

cout>setf(ios::scientific);

print(f,2,10);

cout>unsetf(ios::scientific);

)

voidprint(floata[],intcount,intwidth){

ofor(inti=0;i<count;i++){

ecout、width(width);

cout<<a[i](<endl;

)

18、一個const對象就是否能訪問所有成員函數(shù)?

19、私有與保護之間得區(qū)別就是什么?

20、在C++中,封裝就是借助于什么達到得?

21、C++可通過什么建立類庫?

22、用于類中虛成員函數(shù)說明得關(guān)鍵字就是什么?

23、完成下面得類定義。

ClassMyClass

{^public:

MyClass(){x=0;)A①intGetNum(②my);aprivate:

Aintx;

};

intGetNum(②my)

(

___returnmy、x;A}

24、在下面程序得橫線處填上適當?shù)谜Z句,使類型該程序執(zhí)行結(jié)果為10。

#include(iostream>h>

c1assMyClass

{Apublie:A①〃為x置值

②〃取x值

private:aintx;A};AVOidmain()

(

Myclassmy(10);

Cout<<my>GetNum()<<end;A)

25、下面得類中定義了一個關(guān)于星期得枚舉類型,請完成下面得程序。aClassMyC1a

public:

enumWeek{Sun,Mon,Tue,Wed,Thu,Fri,Sat);AWeekweek;

}

voidfun(MyClass&my)

{A①二②_______;____〃將對象my得week賦值為所定義得

枚舉類型A〃值為3得枚舉量

)

26、下列程序?qū),y與z按從小到大得順序排列,在劃線處填入正確得內(nèi)容。

Template<c1assT〉A(chǔ)voidorder(①)A{

__________②________

if(x>y){a=x;x=y;y=a;}Mf(y>z){a=y;y=z;z=a;}

if(x>y){a=x;x=y;y=a;}

}

27、什么就是數(shù)據(jù)封裝?

28什么叫做支配規(guī)則?

29、為什么引入函數(shù)模板與類模板?

30、在使用C++時,就是否應仍然保持C語言得習慣及思維方式

溫馨提示

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

評論

0/150

提交評論