c+復(fù)習(xí)題集及答案_第1頁
c+復(fù)習(xí)題集及答案_第2頁
c+復(fù)習(xí)題集及答案_第3頁
c+復(fù)習(xí)題集及答案_第4頁
c+復(fù)習(xí)題集及答案_第5頁
已閱讀5頁,還剩41頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、目錄一、單選題1二、判斷題12三、填空題13四、程序填充19五、讀程序?qū)懗鲞\行結(jié)果32六、指出以下程序或函數(shù)的功能44七、程序改錯46八、程序設(shè)計52面向?qū)ο蟪绦蛟O(shè)計答案62一、單選題 1. C+源程序文件的缺省擴展名為( A )。 A. cpp B. exe C. obj D. lik 2. 由C+源程序文件編譯而成的目標(biāo)文件的缺省擴展名為( C )。 A. cpp B. exe C. obj D. lik 3. 由C+目標(biāo)文件連接而成的可執(zhí)行文件的缺省擴展名為( B )。 A. cpp B. exe C. obj D. lik 4. 編寫C+程序一般需經(jīng)過的幾個步驟依次是( B )。 A.

2、 編譯、編輯、連接、調(diào)試 B. 編輯、編譯、連接、調(diào)試 C. 編譯、調(diào)試、編輯、連接 D. 編輯、調(diào)試、編輯、連接 6. 能作為C+程序的基本單位是( C )。 A. 字符 B. 語句 C. 函數(shù) D. 源程序文件 8. C+程序的基本模塊為( D )。 A. 表達(dá)式 B. 標(biāo)識符 C. 語句 D. 函數(shù) 10. 存儲以下數(shù)據(jù),占用存儲字節(jié)最多的是( D )。 A. 0 B. 0 C. “0” D. 38. 以下說法中正確的是( B )。 A. C+程序總是從第一個定義的函數(shù)開始執(zhí)行 B. C+程序總是從main函數(shù)開始執(zhí)行 C. C+函數(shù)必須有返回值,否則不能使用函數(shù) D. C+程序中有調(diào)用

3、關(guān)系的所有函數(shù)必須放在同一個程序文件中 40. 函數(shù)重載是指( A )。 A. 兩個或兩個以上的函數(shù)取相同的函數(shù)名,但形參的個數(shù)或類型不同 B. 兩個以上的函數(shù)取相同的名字和具有相同的參數(shù)個數(shù),但形參的類型可以不同 C. 兩個以上的函數(shù)名字不同,但形參的個數(shù)或類型相同 D. 兩個以上的函數(shù)取相同的函數(shù)名,并且函數(shù)的返回類型相同 41. 以下關(guān)于函數(shù)模板敘述正確的是( C )。 A. 函數(shù)模板也是一個具體類型的函數(shù) B. 函數(shù)模板的類型參數(shù)與函數(shù)的參數(shù)是同一個概念 C. 通過使用不同的類型參數(shù),函數(shù)模板可以生成不同類型的函數(shù) D. 用函數(shù)模板定義的函數(shù)沒有類型 42. 下列( C )的調(diào)用方式是

4、引用調(diào)用。 A. 形參和實參都是變量 B.形參是指針,實參是地址值 C. 形參是引用,實參是變量 D.形參是變量,實參是地址值 43. 為了提高程序的運行速度,可將不太復(fù)雜的功能用函數(shù)實現(xiàn),此函數(shù)應(yīng)選擇( A )。 A. 內(nèi)聯(lián)函數(shù) B.重載函數(shù) C.遞歸函數(shù) D.函數(shù)模板 55. 以下正確的描述是( C )。 A. 不允許設(shè)置參數(shù)的默認(rèn)值 B. 設(shè)置參數(shù)的默認(rèn)值只能在定義函數(shù)時設(shè)置 C. 設(shè)置參數(shù)的默認(rèn)值時,應(yīng)該設(shè)置右邊的參數(shù) D. 設(shè)置參數(shù)的默認(rèn)值時,應(yīng)該全部參數(shù)都設(shè)置 56. 采用重載函數(shù)的目的是( D )。 A. 實現(xiàn)共享 B. 減少空間 C. 提高速度 D. 使用方便,提高可讀性 59

5、. 下面的標(biāo)識符中,( C )是文件級作用域。 A. 函數(shù)形參 B.語句標(biāo)號 C.外部靜態(tài)類標(biāo)識符 D.自動類標(biāo)識符 60. 以下敘述不正確的是( D )。 A. 宏替換不占用運行時間 B. 宏名無類型 C. 宏替換只是字符替換 D. 宏名必須用大寫字母表示 61. C+語言的編譯系統(tǒng)對宏命令的處理是( D )。 A. 在程序運行時進(jìn)行 B. 在程序連接時進(jìn)行 C. 和C+程序的其它語句同時進(jìn)行編譯 D. 在對源程序中其它成分正式編譯之前進(jìn)行 62. 當(dāng)#include后面的文件名用雙引號括起來時,尋找被包含文件的方式是( B )。 A. 直接按系統(tǒng)設(shè)定的標(biāo)準(zhǔn)方式搜索目錄 B. 先在源程序所在

6、目錄搜索,再按系統(tǒng)設(shè)定的標(biāo)準(zhǔn)方式搜索目錄 C. 僅僅搜索源程序所在目錄 D. 搜索當(dāng)前邏輯盤上的所有目錄 63. 當(dāng)#include后面的文件名用尖括號括起來時,尋找被包含文件的方式是( A )。 A. 直接按系統(tǒng)設(shè)定的標(biāo)準(zhǔn)方式搜索目錄 B. 先在源程序所在目錄搜索,再按系統(tǒng)設(shè)定的標(biāo)準(zhǔn)方式搜索目錄 C. 僅僅搜索源程序所在目錄 D. 搜索當(dāng)前邏輯盤上的所有目錄 67. 文件包含命令中被包含的文件的擴展名( C )。 A. 必須是.h B. 不能是.h C. 可以是.h或.cpp D. 必須是.cpp 70. 用new運算符創(chuàng)建一個含10個元素的一維整型數(shù)組的正確語句是( C )。 A. int

7、 *p=new a10; B. int *p=new float10; C. int *p=new int10; D. int *p=new int10=1,2,3,4,5 80. 假定p指向的字符串為”string”,則coutp+3的輸出結(jié)果為( C )。 A. string B. ring C. ing D. i 81. 假定p指向的字符串為”string”,若要輸出這個字符串的地址值,則使用( D )。 A. cout*s; B. couts; C. cout&s; D. couttitle,”Wang Tao”); B. strcpy,”Wang Tao”); C. strcpy(*

8、,”Wang Tao”); D. strcpy(*book)-title,”Wang Tao”); 86. 假定有“struct BOOKchar title40; float price; BOOK *book;”,則不正確的語句為( A )。 A. BOOK *x=new book; B. BOOK x=C+ Programming,; C. BOOK *x=new BOOK; D. BOOK *x=book; 87. 假定有“struct BOOKchar title40; float price;book;”,則正確的語句為( B )。 A. BOOK &x= &book; B. BO

9、OK &x=book; C. BOOK &x=new BOOK; D. BOOK &x=BOOK; 88. 下列對引用的陳述中不正確的是( C )。 A. 每一個引用都是其所引用對象的別名,因此必須初始化 B. 形式上針對引用的操作實際上作用于它所引用的對象 C. 一旦定義了引用,一切針對其所引用對象的操作只能通過該引用間接進(jìn)行 D. 不需要單獨為引用分配存儲空間 91. 假定指針變量p定義為“int *p=new int(100);”,要釋放p所指向的動態(tài)內(nèi)存,應(yīng)使用語句( A )。 A. delete p; B. delete *p; C. delete &p; D. delete p;

10、92. 假定指針變量p定義為“int *p=new int30;”,要釋放p所指向的動態(tài)內(nèi)存,應(yīng)使用語句( D )。 A. delete p; B. delete *p; C. delete &p; D. delete p; 93. 假定變量x定義為“int x=5;”,要使rx成為x的引用(別名),rx應(yīng)定義為( D )。 A. int rx=x; B. int rx=&x; C. int *rx=&x; D. int &rx=x; 94. 關(guān)于消息,下列說法中不正確的是( B )。 A. 發(fā)送消息的對象請求服務(wù),接受消息的對象提供服務(wù) B. 消息的發(fā)送者必須了解消息的接收者如何相應(yīng)消息 C

11、. 在C+中,消息的發(fā)送具體體現(xiàn)為對接收消息的對象的某個函數(shù)的調(diào)用 D. 每個對象只能接收某些特定格式的消息 95. 關(guān)于封裝,下列說法中不正確的是( D )。 A. 通過封裝,對象的全部屬性和操作結(jié)合在一起,形成一個整體 B. 通過封裝,一個對象的實現(xiàn)細(xì)節(jié)被盡可能地隱藏起來(不可見) C. 通過封裝,每個對象都成為相對獨立的實體 D. 通過封裝,對象的屬性都是不可見的 96. 面向?qū)ο蠓椒ǖ亩鄳B(tài)性是指( C )。 A. 一個類可以派生出多個特殊類 B. 一個對象在不同的運行環(huán)境中可以有不同的變體 C. 針對一消息,不同的對象可以以適合自身的方式加以響應(yīng) D. 一個對象可以是由多個其他對象組合

12、而成的 97. 軟件產(chǎn)品在需求發(fā)生變化、運行環(huán)境發(fā)生變化或發(fā)現(xiàn)軟件產(chǎn)品本身的錯誤或不足時進(jìn)行相應(yīng)的軟件更新的難易程度叫做軟件的( A )。 A. 可維護(hù)性 B. 可復(fù)用性 C. 兼容性 D. 正確性 98. 軟件產(chǎn)品可被全部或部分地再用于新的應(yīng)用的能力叫做軟件的( B )。 A. 可維護(hù)性 B. 可復(fù)用性 C. 兼容性 D. 正確性 99. 軟件產(chǎn)品與其他軟件產(chǎn)品組合成一個整體的難易程度叫做軟件的( C )。 A. 可維護(hù)性 B. 可復(fù)用性 C. 兼容性 D. 正確性 100. 軟件產(chǎn)品準(zhǔn)確執(zhí)行軟件需求規(guī)格說明書中所規(guī)定的任務(wù)的能力叫做軟件的( D )。 A. 可維護(hù)性 B. 可復(fù)用性 C.

13、兼容性 D. 正確性 101. 面向?qū)ο筌浖_發(fā)中使用的OOA表示( A )。 A. 面向?qū)ο蠓治?B. 面向?qū)ο笤O(shè)計 C. 面向?qū)ο笳Z言 D. 面向?qū)ο蠓椒?102. 面向?qū)ο筌浖_發(fā)中使用的OOD表示( B )。 A. 面向?qū)ο蠓治?B. 面向?qū)ο笤O(shè)計 C. 面向?qū)ο笳Z言 D. 面向?qū)ο蠓椒?103. 關(guān)于面向?qū)ο笙到y(tǒng)分析,下列說法中不正確的是( B )。 A. 術(shù)語“面向?qū)ο蠓治觥笨梢杂每s寫OOA表示 B. 面向?qū)ο蠓治鲭A段對問題域的描述比實現(xiàn)階段更詳細(xì) C. 面向?qū)ο蠓治霭▎栴}域分析和應(yīng)用分析兩個步驟 D. 面向?qū)ο蠓治鲂枰R別對象的內(nèi)部和外部特征 104. 在一個類的定義中,包含有

14、( C )成員的定義。 A. 數(shù)據(jù) B. 函數(shù) C. 數(shù)據(jù)和函數(shù) D. 數(shù)據(jù)或函數(shù) 105. 在類作用域中能夠通過直接使用該類的( D )成員名進(jìn)行訪問。 A. 私有 B. 公用 C. 保護(hù) D. 任何 106. 在關(guān)鍵字public后面定義的成員為類的( B )成員。 A. 私有 B. 公用 C. 保護(hù) D. 任何 107. 在關(guān)鍵字private后面定義的成員為類的( A )成員。 A. 私有 B. 公用 C. 保護(hù) D. 任何108. 假定AA為一個類,a為該類公有的數(shù)據(jù)成員,x為該類的一個對象,則訪問x對象中數(shù)據(jù)成員a的格式為( D )。 A. x(a) B. xa C. x-a D.

15、 109. 假定AA為一個類,a()為該類公有的函數(shù)成員,x為該類的一個對象,則訪問x對象中函數(shù)成員a()的格式為( B )。 A. B. () C. x-a D. x-a()110. 假定AA為一個類,a為該類公有的數(shù)據(jù)成員,px為指向該類對象的一個指針,則訪問px所指對象中數(shù)據(jù)成員a的格式為( C )。 A. px(a) B. pxa C. px-a D. 111. 假定AA為一個類,a為該類私有的數(shù)據(jù)成員,GetValue()為該類公有函數(shù)成員,它返回a的值,x為該類的一個對象,則訪問x對象中數(shù)據(jù)成員a的格式為( D )。 A. B. () C. x-GetValue() D. () 1

16、12. 假定AA為一個類,int a()為該類的一個成員函數(shù),若該成員函數(shù)在類定義體外定義,則函數(shù)頭為( A )。 A. int AA:a() B. int AA:a() C. AA:a() D. AA:int a() 113. 假定AA為一個類,a為該類公有的數(shù)據(jù)成員,若要在該類的一個成員函數(shù)中訪問它,則書寫格式為( A )。 A. a B. AA:a C. a() D. AA:a() 114. 若需要把一個類外定義的成員函數(shù)指明為內(nèi)聯(lián)函數(shù),則必須把關(guān)鍵字( B )放在函數(shù)原型或函數(shù)頭的前面。 A. in B. inline C. inLine D. InLiner 115. 在多文件結(jié)構(gòu)的

17、程序中,通常把類的定義單獨存放于( D )中。 A. 主文件 B. 實現(xiàn)文件 C. 庫文件 D. 頭文件 116. 在多文件結(jié)構(gòu)的程序中,通常把類中所有非內(nèi)聯(lián)函數(shù)的定義單獨存放于( B )中。 A. 主文件 B. 實現(xiàn)文件 C. 庫文件 D. 頭文件 117. 在多文件結(jié)構(gòu)的程序中,通常把含有main()函數(shù)的文件稱為( A )。 A. 主文件 B. 實現(xiàn)文件 C. 程序文件 D. 頭文件 118. 一個C+程序文件的擴展名為( C )。 A. .h B. .c C. .cpp D. .cp 119. 在C+程序中使用的cin標(biāo)識符是系統(tǒng)類庫中定義的( A )類中的一個對象。 A. istre

18、am B. ostream C. iostream D. fstream 120. 在C+程序中使用的cout標(biāo)識符是系統(tǒng)類庫中定義的( B )類中的一個對象。 A. istream B. ostream C. iostream D. fstream 121. 假定AA是一個類,abc是該類的一個成員函數(shù),則參數(shù)表中隱含的第一個參數(shù)的類型為( D )。 A. int B. char C. AA D. AA* 122. 假定AA是一個類,abc是該類的一個成員函數(shù),則參數(shù)表中隱含的第一個參數(shù)為( C )。 A. abc B. *this C. this D. this& 123. 假定AA是一個

19、類,“AA& abc();”是該類中一個成員函數(shù)的原型,若該函數(shù)存在對*this賦值的語句,當(dāng)用()調(diào)用該成員函數(shù)后,x的值( A )。 A. 已經(jīng)被改變 B. 可能被改變 C. 不變 D.不受函數(shù)調(diào)用的影響 124. 假定AA是一個類,“AA* abc()const;”是該類中一個成員函數(shù)的原型,若該函數(shù)返回this值,當(dāng)用()調(diào)用該成員函數(shù)后,x的值( C )。 A. 已經(jīng)被改變 B. 可能被改變 C. 不變 D. 受到函數(shù)調(diào)用的影響 125. 類中定義的成員默認(rèn)為( B )訪問屬性。 A. public B. private C. protected D. friend 126. 結(jié)構(gòu)中

20、定義的成員默認(rèn)為( A )訪問屬性。 A. public B. private C. protected D. friend 127. 當(dāng)類中一個字符指針成員指向具有n個字節(jié)的存儲空間時,它所能存儲字符串的最大長度為( C )。 A. n B. n+1 C. n-1 D. n-2 128. 在一個用數(shù)組實現(xiàn)的隊列類中,假定數(shù)組長度為MS,隊首元素位置為first,隊列長度為length,則隊尾(即最后一個)元素的位置為( C )。 A. length+1 B. first+length C. (first+length-1)%MS D. (first+length)%MS 129. 在一個用數(shù)

21、組實現(xiàn)的隊列類中,假定數(shù)組長度為MS,隊首元素位置為first,隊列長度為length,則隊尾的后一個位置為( D )。 A. length+1 B. first+length C. (first+length-1)%MS D. (first+length)%MS 130. 在一個用數(shù)組實現(xiàn)的隊列類中,假定數(shù)組長度為MS,隊首元素位置為first,隊列長度為length,則隊首的后一個位置為( B )。 A. first+1 B. (first+1)%MS C. (first-1)%MS D. (first+length)%MS 131. 在一個用鏈表實現(xiàn)的隊列類中,假定每個結(jié)點包含的值域用e

22、lem表示,包含的指針域用next表示,鏈隊的隊首指針用elemHead表示,隊尾指針用elemTail表示,若鏈隊非空,則進(jìn)行插入時必須把新結(jié)點的地址賦給( D )。 A. elemHead B. elemTail C. elemHead-next和elemHead D. elemTail-next和elemTail 132. 在一個用鏈表實現(xiàn)的隊列類中,假定每個結(jié)點包含的值域用elem表示,包含的指針域用next表示,鏈隊的隊首指針用elemHead表示,隊尾指針用elemTail表示,若鏈隊為空,則進(jìn)行插入時必須把新結(jié)點的地址賦給( C )。 A. elemHead B. elemTai

23、l C. elemHead和elemTail D. elemHead或elemTail 133. 隊列具有( A )的操作特性。 A. 先進(jìn)先出 B. 先進(jìn)后出 C. 進(jìn)出無序 D. 進(jìn)出任意 134. 棧具有( B )的操作特性。 A. 先進(jìn)先出 B. 先進(jìn)后出 C. 進(jìn)出無序 D. 進(jìn)出任意 135. 對于一個類的構(gòu)造函數(shù),其函數(shù)名與類名( A )。 A. 完全相同 B. 基本相同 C. 不相同 D. 無關(guān)系 136. 對于一個類的析構(gòu)函數(shù),其函數(shù)名與類名( C )。 A. 完全相同 B. 完全不同 C. 只相差一個字符 D. 無關(guān)系 137. 類的構(gòu)造函數(shù)是在定義該類的一個( C )時被

24、自動調(diào)用執(zhí)行的。 A. 成員函數(shù) B. 數(shù)據(jù)成員 C. 對象 D. 友元函數(shù) 138. 類的析構(gòu)函數(shù)是一個對象被( B )時自動調(diào)用的。 A. 建立 B. 撤消 C. 賦值 D. 引用 139. 一個類的構(gòu)造函數(shù)通常被定義為該類的( A )成員。 A. 公用 B. 保護(hù) C. 私有 D. 友元 140. 一個類的析構(gòu)函數(shù)通常被定義為該類的( C )成員。 A. 私有 B. 保護(hù) C. 公用 D. 友元 141. 假定AB為一個類,則執(zhí)行 “AB x;”語句時將自動調(diào)用該類的( B )。 A. 帶參構(gòu)造函數(shù) B. 無參構(gòu)造函數(shù) C. 拷貝構(gòu)造函數(shù) D. 賦值重載函數(shù) 142. 假定AB為一個類,

25、則執(zhí)行 “AB x(a,5);”語句時將自動調(diào)用該類的( A )。 A. 帶參構(gòu)造函數(shù) B. 無參構(gòu)造函數(shù) C. 拷貝構(gòu)造函數(shù) D. 賦值重載函數(shù) 143. 假定AB為一個類,則執(zhí)行 “AB *s=new AB(a,5);”語句時得到的一個動態(tài)對象為( D )。 A. s B. s-a C. D. *s 144. 假定AB為一個類,則執(zhí)行 “AB r1=r2;”語句時將自動調(diào)用該類的( D )。 A. 無參構(gòu)造函數(shù) B. 帶參構(gòu)造函數(shù) C. 賦值重載函數(shù) D. 拷貝構(gòu)造函數(shù) 145. 若需要使類中的一個指針成員指向一塊動態(tài)存儲空間,則通常在( B )函數(shù)中完成。 A. 析構(gòu) B. 構(gòu)造 C.

26、任一成員 D. 友元 146. 當(dāng)類中的一個整型指針成員指向一塊具有n*sizeof(int)大小的存儲空間時,它最多能夠存儲( A )個整數(shù)。 A. n B. n+1 C. n-1 D. 1 147. 假定一個類的構(gòu)造函數(shù)為 “A(int aa, int bb) a=aa; b=aa*bb;”,則執(zhí)行 “A x(4,5);”語句后,和的值分別為( C )。 A. 4和5 B. 5和4 C. 4和20 D. 20和5 148. 假定一個類的構(gòu)造函數(shù)為 “A(int aa=1, int bb=0) a=aa; b=bb;”,則執(zhí)行 “A x(4);”語句后,和的值分別為( D )。 A. 1和0

27、 B. 1和4 C. 4和1 D. 4和0 149. 假定AB為一個類,則( B )為該類的拷貝構(gòu)造函數(shù)的原型說明。 A. AB(AB x); B. AB(AB& x); C. void AB(AB& x); D. AB(int x); 150. 假定一個類的構(gòu)造函數(shù)為 “B(int ax, int bx): a(ax), b(bx) ”,執(zhí)行 “B x(1,2),y(3,4);x=y;”語句序列后的值為( C )。 A. 1 B. 2 C. 3 D. 4 151. 假定一個類AB只含有一個整型數(shù)據(jù)成員a,當(dāng)用戶不定義任何構(gòu)造函數(shù)時,系統(tǒng)為該類定義的無參構(gòu)造函數(shù)為( D )。 A. AB()

28、a=0; B. AB(int aa=0): a(aa) C. AB(int aa): a(aa) D. AB() 152. 假定一個類AB只含有一個整型數(shù)據(jù)成員a,用戶為該類定義的帶參構(gòu)造函數(shù)可以為( C )。 A. AB() B. AB(): a(0) C. AB(int aa=0) a=aa; D. AB(int aa) 153. 對于任一個類,用戶所能定義的構(gòu)造函數(shù)的個數(shù)至多為( D )。 A. 0 B. 1 C. 2 D. 任意個 154. 對于任一個類,用戶所能定義的析構(gòu)函數(shù)的個數(shù)至多為( B )。 A. 0 B. 1 C. 2 D. 任意個 155. 假定AB為一個類,則執(zhí)行 “A

29、B *px=new ABn;”語句時將( A )。 A. 動態(tài)分配一個數(shù)組 B. 動態(tài)分配一個對象 C. 靜態(tài)分配一個數(shù)組 D. 靜態(tài)分配一個對象 156. 設(shè)px是指向一個類對象的指針變量,則執(zhí)行 “delete px;”語句時,將自動調(diào)用該類的( C )。 A. 無參構(gòu)造函數(shù) B. 帶參構(gòu)造函數(shù) C. 析構(gòu)函數(shù) D. 拷貝構(gòu)造函數(shù) 157. 當(dāng)一個類對象離開它的作用域時,系統(tǒng)自動調(diào)用該類的( D )。 A. 無參構(gòu)造函數(shù) B. 帶參構(gòu)造函數(shù) C. 拷貝構(gòu)造函數(shù) D. 析構(gòu)函數(shù) 158. 假定一個類對象數(shù)組為An,當(dāng)離開它定義的作用域時,系統(tǒng)自動調(diào)用該類析構(gòu)函數(shù)的次數(shù)為( C )。 A. 0

30、 B. 1 C. n D. n-1 159. 假定AB為一個類,則執(zhí)行 “AB a10;”語句時調(diào)用該類無參構(gòu)造函數(shù)的次數(shù)為( D )。 A. 0 B. 1 C. 9 D. 10 160. 假定AB為一個類,則執(zhí)行 “AB *px=new ABn;”語句時調(diào)用該類無參構(gòu)造函數(shù)的次數(shù)為( A )。 A. n B. n-1 C. 1 D. 0 161. 假定AB為一個類,則執(zhí)行 “AB a, b(3), *p;”語句時共調(diào)用該類構(gòu)造函數(shù)的次數(shù)為( A )。 A. 2 B. 3 C. 4 D. 5 162. 假定AB為一個類,則執(zhí)行 “AB a(2), b3, *p4;”語句時共調(diào)用該類構(gòu)造函數(shù)的次

31、數(shù)為( B )。 A. 3 B. 4 C. 5 D. 9 163. 假定AB為一個類,則執(zhí)行“AB a, b(2), c3, *p=&a;”語句時共調(diào)用該類無參構(gòu)造函數(shù)的次數(shù)為( D )。 A. 5 B. 6 C. 3 D. 4 164. 假定AB為一個類,則執(zhí)行“AB *p=new AB(1,2);”語句時共調(diào)用該類構(gòu)造函數(shù)的次數(shù)為( B )。 A. 0 B. 1 C. 2 D. 3 165. 假定AB為一個類,px為指向該類的一個含有n個對象的動態(tài)數(shù)組的指針,則執(zhí)行“delete px;”語句時共調(diào)用該類析構(gòu)函數(shù)的次數(shù)為( C )。 A. 0 B. 1 C. n D. n+1 166. 對

32、類對象成員的初始化是通過構(gòu)造函數(shù)中給出的( B )實現(xiàn)的。 A. 函數(shù)體 B. 初始化表 C. 參數(shù)表 D. 初始化表或函數(shù)體 167. 對類中常量成員的初始化是通過構(gòu)造函數(shù)中給出的( C )實現(xiàn)的。 A. 函數(shù)體 B. 參數(shù)表 C. 初始化表 D. 初始化表或函數(shù)體 168. 對類中引用成員的初始化是通過構(gòu)造函數(shù)中給出的( C )實現(xiàn)的。 A. 函數(shù)體 B. 參數(shù)表 C. 初始化表 D. 初始化表或函數(shù)體 169. 類的構(gòu)造函數(shù)可以帶有( D )個參數(shù)。 A. 0 B. 1 C. 2 D. 任意 170. 類的析構(gòu)函數(shù)可以帶有( A )個參數(shù)。 A. 0 B. 1 C. 2 D. 任意 17

33、1. 一個類的靜態(tài)數(shù)據(jù)成員所表示屬性 ( C )。 A. 是類的或?qū)ο蟮膶傩?B. 只是對象的屬性 C. 只是類的屬性 D. 類和友元的屬性 172. 類的靜態(tài)成員的訪問控制( D )。 A. 只允許被定義為private B. 只允許被定義為private或protected C. 只允許被定義為public D. 可允許被定義為private、protected或public 173. 靜態(tài)成員函數(shù)對類的數(shù)據(jù)成員訪問( B )。 A. 是不允許的 B. 只允許是靜態(tài)數(shù)據(jù)成員 C. 只允許是非靜態(tài)數(shù)據(jù)成員 D. 可允許是靜態(tài)數(shù)據(jù)成員或非靜態(tài)數(shù)據(jù)成員 174. 被非靜態(tài)成員函數(shù)訪問的類的數(shù)據(jù)成

34、員( A )。 A. 可以是非靜態(tài)數(shù)據(jù)成員或靜態(tài)數(shù)據(jù)成員 B. 不可能是類的靜態(tài)數(shù)據(jù)成員 C. 只能是類的非靜態(tài)數(shù)據(jù)成員 D. 只能是類的靜態(tài)數(shù)據(jù)成員 175. 靜態(tài)數(shù)據(jù)成員的初始化是在( D )中進(jìn)行的。 A. 構(gòu)造函數(shù) B. 任何成員函數(shù) C. 所屬類 D. 全局區(qū) 176. 當(dāng)將一個類A或函數(shù)f()說明為另一個類B的友元后,類A或函數(shù)f()能夠直接訪問類B的( D )。 A. 只能是公有成員 B. 只能是保護(hù)成員 C. 只能是除私有成員之外的任何成員 D. 具有任何權(quán)限的成員 177. 引入友元的主要目的是為了( C )。 A. 增強數(shù)據(jù)安全性 B. 提高程序的可靠性 C. 提高程序的效

35、率和靈活性 D. 保證類的封裝性 178. 一個類的成員函數(shù)也可以成為另一個類的友元函數(shù),這時的友元說明( A )。 A. 需加上類域的限定 B. 不需加上類域的限定 C. 類域的限定可加可不加 D. 不需要任何限定 179. 一個類的友元不是該類的成員,與該類的關(guān)系密切,所以它( D )。 A. 有this指針,有默認(rèn)操作的對象 B. 沒有this指針,可以有默認(rèn)操作的對象 C. 有this指針,不能執(zhí)行默認(rèn)操作 D. 沒有this指針,也就沒有默認(rèn)操作的對象 180. 在重載一個運算符時,其參數(shù)表中沒有任何參數(shù),這表明該運算符是( B )。 A. 作為友元函數(shù)重載的1元運算符 B. 作為成

36、員函數(shù)重載的1元運算符 C. 作為友元函數(shù)重載的2元運算符 D. 作為成員函數(shù)重載的2元運算符 181. 在成員函數(shù)中進(jìn)行雙目運算符重載時,其參數(shù)表中應(yīng)帶有( B )個參數(shù)。 A. 0 B. 1 C. 2 D. 3 182. 雙目運算符重載為普通函數(shù)時,其參數(shù)表中應(yīng)帶有( C )個參數(shù)。 A. 0 B. 1 C. 2 D. 3 183. 如果表達(dá)式a+b中的“+”是作為成員函數(shù)重載的運算符,若采用運算符函數(shù)調(diào)用格式,則可表示為( A )。 A. +(b) B. +(a) C. operator+(a,b) D. operator(a+b) 184. 如果表達(dá)式a=b中的“=”是作為普通函數(shù)重載

37、的運算符,若采用運算符函數(shù)調(diào)用格式,則可表示為( C )。 A. =(b) B. =(a) C. operator=(a,b) D. operator=(b,a) 185. 如果表達(dá)式a+中的“+”是作為普通函數(shù)重載的運算符,若采用運算符函數(shù)調(diào)用格式,則可表示為( C )。 A. +() B. operator+(a) C. operator+(a,1) D. operator+(1,a) 186. 如果表達(dá)式+a中的“+”是作為成員函數(shù)重載的運算符,若采用運算符函數(shù)調(diào)用格式,則可表示為( D )。 A. +(1) B. operator+(a) C. operator+(a,1) D. +(

38、) 187. 關(guān)于運算符重載,下列說法正確的是( C )。 A. 重載時,運算符的優(yōu)先級可以改變。 B. 重載時,運算符的結(jié)合性可以改變。 C. 重載時,運算符的功能可以改變。 D. 重載時,運算符的操作數(shù)個數(shù)可以改變。 188. 關(guān)于運算符重載,下列說法正確的是( B )。 A. 所有的運算符都可以重載。 B. 通過重載,可以使運算符應(yīng)用于自定義的數(shù)據(jù)類型。 C. 通過重載,可以創(chuàng)造原來沒有的運算符。 D. 通過重載,可以改變運算符的優(yōu)先級。 189. 一個程序中數(shù)組a和變量k定義為“int a510,k;”,且程序中包含有語句“a(2,5)=+k*3;”,則此語句中肯定屬于重載操作符的是(

39、 A )。 A. ( ) B. = C. + D. * 190. 假定K是一個類名,并有定義“K k; int j;”,已知K中重載了操作符 ( ),且語句“j=k(3);”和“k(5)=99;”都能順利執(zhí)行,說明該操作符函數(shù)的原形只可能是( C )。 A. K operator ( ) (int); B. int operator ( )(int&); C. int & operator ( )(int); D. K &operator( )(int); 191. 假定M是一個類名,且M中重載了操作符=,可以實現(xiàn)M對象間的連續(xù)賦值,如“m1=m2=m3;”。重載操作符=的函數(shù)原型最好是( D

40、 )。 A. int operaotor=(M); B. int operator=(M&); C. M operator=(M&); D. M& operator=(M); 192. 下面是重載雙目運算符+的普通函數(shù)原形,其中最符合+原來含義的是( A )。 A. Value operator+(Value, Value); B. Value operator+(Value,int); C. Value &operator+(Value, Value); D. Value &operator+(Value&, Value&); 193. 下面是重載雙目運算符-的成員函數(shù)原形,其中最符合-原來

41、含義的是( A )。 A. Value Value:operator-(Value); B. Value Value:operator-(int); C. Value& Value:operator-(Value); D. Value& Value:operator-(Value&); 194. 在重載一運算符時,若運算符函數(shù)的形參表中沒有參數(shù),則不可能的情況是( D )。 A. 該運算符是一個單目運算符。 B. 該運算符函數(shù)有一個隱含的參數(shù)this。 C. 該運算符函數(shù)是類的成員函數(shù)。 D. 該運算符函數(shù)是類的友元函數(shù)。 195. 關(guān)于插入運算符的重載,下列說法不正確的是( B )。 A.

42、運算符函數(shù)的返回值類型是ostream & 。 B. 重載的運算符必須定義為類的成員函數(shù)。 C. 運算符函數(shù)的第一個參數(shù)的類型是ostream & 。 D. 運算符函數(shù)有兩個參數(shù)。 196. 從一個基類派生出的各個類的對象之間( C )。 A. 共享所有數(shù)據(jù)成員,每個對象還包含基類的所有屬性 B. 共享部分?jǐn)?shù)據(jù)成員,每個對象還包含基類的所有屬性 C. 不共享任何數(shù)據(jù)成員,但每個對象還包含基類的所有屬性 D. 共享部分?jǐn)?shù)據(jù)成員和函數(shù)成員 197. 如果是類B在類A的基礎(chǔ)上構(gòu)造,那么,就稱( B )。 A. 類A為基類或父類,類B為超類或子類 B. 類A為基類、父類或超類,類B為派生類或子類 C. 類A為派生類,類B為基類 D. 類A為派生類或子類,類B為基類、父類或超類 198. C+的繼承性允許派生類繼承基類的( C )。 A. 部分特性,并允許增

溫馨提示

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

評論

0/150

提交評論