《面向?qū)ο蟪绦蛟O計》綜合復習題集_第1頁
《面向?qū)ο蟪绦蛟O計》綜合復習題集_第2頁
《面向?qū)ο蟪绦蛟O計》綜合復習題集_第3頁
《面向?qū)ο蟪绦蛟O計》綜合復習題集_第4頁
《面向?qū)ο蟪绦蛟O計》綜合復習題集_第5頁
已閱讀5頁,還剩43頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、面向?qū)ο蟪绦蛟O計綜合復習題集一、單選題 1. C+源程序文件的缺省擴展名為( )。 A. cpp B. exe C. obj D. lik 2. 由C+源程序文件編譯而成的目標文件的缺省擴展名為( )。 A. cpp B. exe C. obj D. lik 3. 由C+目標文件連接而成的可執(zhí)行文件的缺省擴展名為( )。 A. cpp B. exe C. obj D. lik 4. 編寫C+程序一般需經(jīng)過的幾個步驟依次是( )。 A. 編譯、編輯、連接、調(diào)試 B. 編輯、編譯、連接、調(diào)試 C. 編譯、調(diào)試、編輯、連接 D. 編輯、調(diào)試、編輯、連接 7. 程序中主函數(shù)的名字為( )。 A. ma

2、in B. MAIN C. Main D. 任意標識符 14. 設”int a=15,b=26;”,則”cout<<(a,b);”的輸出結果是( )。A. 15 B. 26,15 C. 15,26 D. 26 32. 在下面的一維數(shù)組定義中,哪一個有語法錯誤。( ) A. int a=1,2,3; B. int a10=0; C. int a; D. int a5; 33. 在下面的字符數(shù)組定義中,哪一個有語法錯誤。( )。 A. char a20=”abcdefg”; B. char a=”x+y=55.”; C. char a15; D. char a10=5; 34. 在下面

3、的二維數(shù)組定義中,正確的是( )。 A. int a5; B. int a5; C. int a3=1,3,5,2; D. int a(10); 35. 假定一個二維數(shù)組的定義語句為“int a34=3,4,2,8,6;”,則元素a12的值為( )。 A. 2 B. 4 C. 6 D. 8 36. 假定一個二維數(shù)組的定義語句為“int a34=3,4,2,8,6;”,則元素a21的值為( )。 A. 0 B. 4 C. 8 D. 6 37. 若定義了函數(shù) double *function(), 則函數(shù)function的返回值為( )。 A. 實數(shù)型 B.實數(shù)的地址 C.指向函數(shù)的指針 D.函數(shù)

4、的地址 38. 以下說法中正確的是( )。 A. C+程序總是從第一個定義的函數(shù)開始執(zhí)行 B. C+程序總是從main函數(shù)開始執(zhí)行 C. C+函數(shù)必須有返回值,否則不能使用函數(shù) D. C+程序中有調(diào)用關系的所有函數(shù)必須放在同一個程序文件中 39. 以下敘述中不正確的是( )。 A. 在一個函數(shù)中,可以有多條return語句 B. 函數(shù)的定義不能嵌套,但函數(shù)的調(diào)用可以嵌套 C. 函數(shù)必須有返回值 D. 不同的函數(shù)中可以使用相同名字的變量 40. 函數(shù)重載是指( )。 A. 兩個或兩個以上的函數(shù)取相同的函數(shù)名,但形參的個數(shù)或類型不同 B. 兩個以上的函數(shù)取相同的名字和具有相同的參數(shù)個數(shù),但形參的類

5、型可以不同 C. 兩個以上的函數(shù)名字不同,但形參的個數(shù)或類型相同 D. 兩個以上的函數(shù)取相同的函數(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. int Function(void a); B.void Function (int); C. int Function(a);

6、D.void int(double a); 45. C+中函數(shù)返回值的類型是由( )決定的。 A. return語句中表達式的類型 B.該函數(shù)定義時的類型 C.調(diào)用函數(shù)時的調(diào)用語句 D.系統(tǒng)根據(jù)結果 46. 以下函數(shù)的返回結果是( )。 int function(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(exp1,exp2),(exp3,exp4,exp5)中所含實參的個數(shù)為( )個。 A. 1 B. 2

7、 C. 4 D. 5 48. 設有如下函數(shù)定義 int f(char *s) char *p=s; while(*p!=0) p+; return(p-s); 在主函數(shù)中用cout<<f(“good”)調(diào)用上述函數(shù), 則輸出結果為( )。 A. 3 B. 4 C. 5 D. 6 49. 以下正確的函數(shù)原型語句是( )。 A. double fun(int x,int y) B. double fun(int x;int y) C. double fun(int,int); D. double fun(int x,y); 50. 以下正確的說法是( )。 A. 用戶調(diào)用標準庫函數(shù)前,

8、必須重新定義 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)用的實參,傳遞給形參的是(

9、 )。 A. 數(shù)組的首地址 B. 數(shù)組中第一個元素的值 C. 數(shù)組全部元素的值 D. 數(shù)組元素的個數(shù) 54. 以下錯誤的描述是( )。 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ù)的默認值 B. 設置參數(shù)的默認值只能在定義函數(shù)時設置 C. 設置參數(shù)的默認值時,應該設置右邊的參數(shù) D. 設置參數(shù)的默認值時,應該全部參數(shù)都設置 56. 采用重載函數(shù)的目的是( )。 A. 實現(xiàn)

10、共享 B. 減少空間 59. 下面的標識符中,( )是文件級作用域。 64. 在下面存儲類中, ( ) 對象的可見性與生存期不一致。 A. 外部類 B. 自動類 C. 內(nèi)部靜態(tài)類 D. 寄存器類 65. 在下面存儲類中,( )的對象不是局部變量。 A. 外部靜態(tài)類 B. 自動類 C. 函數(shù)形參 D. 寄存器類 66. 關于局部變量,下面說法正確的是( )。 A. 定義該變量的程序文件中的函數(shù)都可以訪問 B. 定義該變量的函數(shù)中的定義處以下的任何語句都可以訪問 C. 定義該變量的復合語句中的定義處以下的任何語句都可以訪問 D. 定義該變量的函數(shù)中的定義處以上的任何語句都可以訪問 73. 假定變量

11、m定義為“int m=7;”,則定義變量p的正確語句為( )。 A. int p=&m; B. int *p=&m; C. int &p=*m; D. int *p=m; 74. 假定k是一個double類型的變量,則關于變量p的正確定義語句為( )。 A. double p=&k; B. int *p=&k; C. double &p=*k; D. char *p=”Thank you!”; 75. 變量s的定義為“char *s=”Hello world!”;”,要使變量p指向s所指向的同一個字符串,則應選?。?)。 A. char *p=s

12、; B. char *p=&s; C. char *p;p=*s; D. char *p; p=&s; 76. 關于void 指針,下列說法正確的是( )。 A. void 指針就是未指向任何數(shù)據(jù)的指針 B. void 指針就是已定義而未初始化的指針 C. 指向任何類型數(shù)據(jù)的指針可直接賦值給一個void 指針 D. void 指針值可直接賦給一個非void 指針 77. 假定一條定義語句為“int a10, x, *pa=a;”,若要把數(shù)組a中下標為3的元素值賦給x,則不正確的語句為( )。 A. x=pa3; B. x=*(a+3); C. x=a3; D. x=*pa+3;

13、 78. 假定有定義“int b10; int *pb;”,則不正確的賦值語句為( )。 A. pb=b; B. pb=&b0; C. *pb=new int; D. pb=b5; 79. 假定p是具有double類型的指針變量,則表達式+p使p的值(以字節(jié)為單位)增加( )。 A. 1 B. 4 C. sizeof(double) D. sizeof(p) 80. 假定p指向的字符串為”string”,則cout<<p+3的輸出結果為( )。 A. string B. ring C. ing D. i 81. 假定p指向的字符串為”string”,若要輸出這個字符串的地址

14、值,則使用( )。 A. cout<<*s; B. cout<<s; C. cout<<&s; D. cout<<(void *)s; 82. 定義p并使p指向動態(tài)空間中的包含30個整數(shù)的數(shù)組所使用的定義語句為( )。 A. int *p=new int30; B. int *p=new int(30); C. int *p=new 30; D. *p=new int30; 83. 假定p是具有int*類型的指針變量,則給p賦值的正確語句為( )。 A. p=new int; B. p=new int*; C. p=new int*; D

15、. p=new int10; 84. 要使語句“p=new int1020;”能夠正常執(zhí)行,p應被事先定義為( )。 A. int *p; B. int *p; C. int *p20; D. int(*p)20; 88. 下列對引用的陳述中不正確的是( )。 A. 每一個引用都是其所引用對象的別名,因此必須初始化 B. 形式上針對引用的操作實際上作用于它所引用的對象 C. 一旦定義了引用,一切針對其所引用對象的操作只能通過該引用間接進行 D. 不需要單獨為引用分配存儲空間 89. 假定變量a和pa定義為“double a10, *pa=a;”,要將12.35賦值給a中的下標為5的元素,不正確

16、的語句是( )。 A. pa5=12.35; B. a5=12.35; C. *(pa+5)=12.35; D. *(a0+5)=12.35; 90. 假定變量b和pb定義為“int b10, *pb=b;”,要將24賦值給b1元素中,不正確的語句是( )。 A. *(pb+1)=24; B. *(b+1)=24; C. *+b=24; D. *+pb=24; 91. 假定指針變量p定義為“int *p=new int(100);”,要釋放p所指向的動態(tài)內(nèi)存,應使用語句( )。 A. delete p; B. delete *p; C. delete &p; D. delete p;

17、92. 假定指針變量p定義為“int *p=new int30;”,要釋放p所指向的動態(tài)內(nèi)存,應使用語句( )。 A. delete p; B. delete *p; C. delete &p; D. delete p; 93. 假定變量x定義為“int x=5;”,要使rx成為x的引用(別名),rx應定義為( )。 A. int rx=x; B. int rx=&x; C. int *rx=&x; D. int &rx=x; 95. 關于封裝,下列說法中不正確的是( )。 A. 通過封裝,對象的全部屬性和操作結合在一起,形成一個整體 B. 通過封裝,一個對象的

18、實現(xiàn)細節(jié)被盡可能地隱藏起來(不可見) C. 通過封裝,每個對象都成為相對獨立的實體 D. 通過封裝,對象的屬性都是不可見的 96. 面向?qū)ο蠓椒ǖ亩鄳B(tài)性是指( )。 A. 一個類可以派生出多個特殊類 B. 一個對象在不同的運行環(huán)境中可以有不同的變體 C. 針對一消息,不同的對象可以以適合自身的方式加以響應 D. 一個對象可以是由多個其他對象組合而成的 104. 在一個類的定義中,包含有( )成員的定義。 A. 數(shù)據(jù) B. 函數(shù) C. 數(shù)據(jù)和函數(shù) D. 數(shù)據(jù)或函數(shù) 105. 在類作用域中能夠通過直接使用該類的( )成員名進行訪問。 A. 私有 B. 公用 C. 保護 D. 任何 106. 在關鍵

19、字public后面定義的成員為類的( )成員。 A. 私有 B. 公用 C. 保護 D. 任何 107. 在關鍵字private后面定義的成員為類的( )成員。 A. 私有 B. 公用 C. 保護 D. 任何108. 假定AA為一個類,a為該類公有的數(shù)據(jù)成員,x為該類的一個對象,則訪問x對象中數(shù)據(jù)成員a的格式為( )。 A. x(a) B. xa C. x->a D. x.a109. 假定AA為一個類,a()為該類公有的函數(shù)成員,x為該類的一個對象,則訪問x對象中函數(shù)成員a()的格式為( )。 A. x.a B. x.a() C. x->a D. x->a()110. 假定A

20、A為一個類,a為該類公有的數(shù)據(jù)成員,px為指向該類對象的一個指針,則訪問px所指對象中數(shù)據(jù)成員a的格式為( )。 A. px(a) B. pxa C. px->a D. px.a111. 假定AA為一個類,a為該類私有的數(shù)據(jù)成員,GetValue()為該類公有函數(shù)成員,它返回a的值,x為該類的一個對象,則訪問x對象中數(shù)據(jù)成員a的格式為( )。 A. x.a B. x.a() C. x->GetValue() D. x.GetValue() 112. 假定AA為一個類,int a()為該類的一個成員函數(shù),若該成員函數(shù)在類定義體外定義,則函數(shù)頭為( )。 A. int AA:a() B

21、. int AA:a() C. AA:a() D. AA:int a() 113. 假定AA為一個類,a為該類公有的數(shù)據(jù)成員,若要在該類的一個成員函數(shù)中訪問它,則書寫格式為( )。 A. a B. AA:a C. a() D. AA:a() 114. 若需要把一個類外定義的成員函數(shù)指明為內(nèi)聯(lián)函數(shù),則必須把關鍵字( )放在函數(shù)原型或函數(shù)頭的前面。 A. in B. inline C. inLine D. InLiner 121. 假定AA是一個類,abc是該類的一個成員函數(shù),則參數(shù)表中隱含的第一個參數(shù)的類型為( )。 A. int B. char C. AA D. AA* 122. 假定AA是一

22、個類,abc是該類的一個成員函數(shù),則參數(shù)表中隱含的第一個參數(shù)為( )。 A. abc B. *this C. this D. this& 123. 假定AA是一個類,“AA& abc();”是該類中一個成員函數(shù)的原型,若該函數(shù)存在對*this賦值的語句,當用x.abc()調(diào)用該成員函數(shù)后,x的值( )。 A. 已經(jīng)被改變 B. 可能被改變 C. 不變 D.不受函數(shù)調(diào)用的影響 124. 假定AA是一個類,“AA* abc()const;”是該類中一個成員函數(shù)的原型,若該函數(shù)返回this值,當用x.abc()調(diào)用該成員函數(shù)后,x的值( )。 A. 已經(jīng)被改變 B. 可能被改變 C.

23、 不變 D. 受到函數(shù)調(diào)用的影響 125. 類中定義的成員默認為( )訪問屬性。 A. public B. private C. protected D. friend 126. 結構中定義的成員默認為( )訪問屬性。 A. public B. private C. protected D. friend 127. 當類中一個字符指針成員指向具有n個字節(jié)的存儲空間時,它所能存儲字符串的最大長度為( )。 A. n B. n+1 C. n-1 D. n-2 131. 在一個用鏈表實現(xiàn)的隊列類中,假定每個結點包含的值域用elem表示,包含的指針域用next表示,鏈隊的隊首指針用elemHead表示

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

25、或elemTail A. 完全相同 B. 基本相同 C. 不相同 D. 無關系 136. 對于一個類的析構函數(shù),其函數(shù)名與類名( )。 A. 完全相同 B. 完全不同 C. 只相差一個字符 D. 無關系 137. 類的構造函數(shù)是在定義該類的一個( )時被自動調(diào)用執(zhí)行的。 A. 成員函數(shù) B. 數(shù)據(jù)成員 C. 對象 D. 友元函數(shù) 138. 類的析構函數(shù)是一個對象被( )時自動調(diào)用的。 A. 建立 B. 撤消 C. 賦值 D. 引用 139. 一個類的構造函數(shù)通常被定義為該類的( )成員。 A. 公用 B. 保護 C. 私有 D. 友元 140. 一個類的析構函數(shù)通常被定義為該類的( )成員。

26、A. 私有 B. 保護 C. 公用 D. 友元 141. 假定AB為一個類,則執(zhí)行 “AB x;”語句時將自動調(diào)用該類的( )。 A. 帶參構造函數(shù) B. 無參構造函數(shù) C. 拷貝構造函數(shù) D. 賦值重載函數(shù) 142. 假定AB為一個類,則執(zhí)行 “AB x(a,5);”語句時將自動調(diào)用該類的( )。 A. 帶參構造函數(shù) B. 無參構造函數(shù) C. 拷貝構造函數(shù) D. 賦值重載函數(shù) 143. 假定AB為一個類,則執(zhí)行 “AB *s=new AB(a,5);”語句時得到的一個動態(tài)對象為_。 A. s B. s->a C. s.a D. *s 144. 假定AB為一個類,則執(zhí)行 “AB r1=r

27、2;”語句時將自動調(diào)用該類的( )。 A. 無參構造函數(shù) B. 帶參構造函數(shù) C. 賦值重載函數(shù) D. 拷貝構造函數(shù) 145. 若需要使類中的一個指針成員指向一塊動態(tài)存儲空間,則通常在( )函數(shù)中完成。 A. 析構 B. 構造 C. 任一成員 D. 友元 146. 當類中的一個整型指針成員指向一塊具有n*sizeof(int)大小的存儲空間時,它最多能夠存儲( )個整數(shù)。 A. n B. n+1 C. n-1 D. 1 147. 假定一個類的構造函數(shù)為 “A(int aa, int bb) a=aa; b=aa*bb;”,則執(zhí)行 “A x(4,5);”語句后,x.a和x.b的值分別為( )。

28、A. 4和5 B. 5和4 C. 4和20 D. 20和5 148. 假定一個類的構造函數(shù)為 “A(int aa=1, int bb=0) a=aa; b=bb;”,則執(zhí)行 “A x(4);”語句后,x.a和x.b的值分別為( )。 A. 1和0 B. 1和4 C. 4和1 D. 4和0 149. 假定AB為一個類,則( )為該類的拷貝構造函數(shù)的原型說明。 A. AB(AB x); B. AB(AB& x); C. void AB(AB& x); D. AB(int x); 150. 假定一個類的構造函數(shù)為 “B(int ax, int bx): a(ax), b(bx) ”,

29、執(zhí)行 “B x(1,2),y(3,4);x=y;”語句序列后x.a的值為( )。 A. 1 B. 2 C. 3 D. 4 151. 假定一個類AB只含有一個整型數(shù)據(jù)成員a,當用戶不定義任何構造函數(shù)時,系統(tǒng)為該類定義的無參構造函數(shù)為( )。 A. AB() a=0; B. AB(int aa=0): a(aa) C. AB(int aa): a(aa) D. AB() 152. 假定一個類AB只含有一個整型數(shù)據(jù)成員a,用戶為該類定義的帶參構造函數(shù)可以為( )。 A. AB() B. AB(): a(0) C. AB(int aa=0) a=aa; D. AB(int aa) 153. 對于任一個

30、類,用戶所能定義的構造函數(shù)的個數(shù)至多為( )。 A. 0 B. 1 C. 2 D. 任意個 154. 對于任一個類,用戶所能定義的析構函數(shù)的個數(shù)至多為( )。 A. 0 B. 1 C. 2 D. 任意個 155. 假定AB為一個類,則執(zhí)行 “AB *px=new ABn;”語句時將( )。 A. 動態(tài)分配一個數(shù)組 B. 動態(tài)分配一個對象 C. 靜態(tài)分配一個數(shù)組 D. 靜態(tài)分配一個對象 156. 設px是指向一個類對象的指針變量,則執(zhí)行 “delete px;”語句時,將自動調(diào)用該類的( )。 A. 無參構造函數(shù) B. 帶參構造函數(shù) C. 析構函數(shù) D. 拷貝構造函數(shù) 157. 當一個類對象離開

31、它的作用域時,系統(tǒng)自動調(diào)用該類的( )。 A. 無參構造函數(shù) B. 帶參構造函數(shù) C. 拷貝構造函數(shù) D. 析構函數(shù) 158. 假定一個類對象數(shù)組為An,當離開它定義的作用域時,系統(tǒng)自動調(diào)用該類析構函數(shù)的次數(shù)為( )。 A. 0 B. 1 C. n D. n-1 159. 假定AB為一個類,則執(zhí)行 “AB a10;”語句時調(diào)用該類無參構造函數(shù)的次數(shù)為( )。 A. 0 B. 1 C. 9 D. 10 160. 假定AB為一個類,則執(zhí)行 “AB *px=new ABn;”語句時調(diào)用該類無參構造函數(shù)的次數(shù)為( )。 A. n B. n-1 C. 1 D. 0 161. 假定AB為一個類,則執(zhí)行 “

32、AB a, b(3), *p;”語句時共調(diào)用該類構造函數(shù)的次數(shù)為( )。 A. 2 B. 3 C. 4 D. 5 162. 假定AB為一個類,則執(zhí)行 “AB a(2), b3, *p4;”語句時共調(diào)用該類構造函數(shù)的次數(shù)為( )。 A. 3 B. 4 C. 5 D. 9 163. 假定AB為一個類,則執(zhí)行“AB a, b(2), c3, *p=&a;”語句時共調(diào)用該類無參構造函數(shù)的次數(shù)為( )。 A. 5 B. 6 C. 3 D. 4 164. 假定AB為一個類,則執(zhí)行“AB *p=new AB(1,2);”語句時共調(diào)用該類構造函數(shù)的次數(shù)為( )。 A. 0 B. 1 C. 2 D. 3

33、 165. 假定AB為一個類,px為指向該類的一個含有n個對象的動態(tài)數(shù)組的指針,則執(zhí)行“delete px;”語句時共調(diào)用該類析構函數(shù)的次數(shù)為( )。 A. 0 B. 1 C. n D. n+1 166. 對類對象成員的初始化是通過構造函數(shù)中給出的( )實現(xiàn)的。 A. 函數(shù)體 B. 初始化表 C. 參數(shù)表 D. 初始化表或函數(shù)體 167. 對類中常量成員的初始化是通過構造函數(shù)中給出的( )實現(xiàn)的。 A. 函數(shù)體 B. 參數(shù)表 C. 初始化表 D. 初始化表或函數(shù)體 168. 對類中引用成員的初始化是通過構造函數(shù)中給出的( )實現(xiàn)的。 A. 函數(shù)體 B. 參數(shù)表 C. 初始化表 D. 初始化表或

34、函數(shù)體 169. 類的構造函數(shù)可以帶有( )個參數(shù)。 A. 0 B. 1 C. 2 D. 任意 170. 類的析構函數(shù)可以帶有( )個參數(shù)。 A. 0 B. 1 C. 2 D. 任意 171. 一個類的靜態(tài)數(shù)據(jù)成員所表示屬性 ( )。 A. 是類的或?qū)ο蟮膶傩?B. 只是對象的屬性 C. 只是類的屬性 D. 類和友元的屬性 172. 類的靜態(tài)成員的訪問控制( )。 A. 只允許被定義為private B. 只允許被定義為private或protected C. 只允許被定義為public D. 可允許被定義為private、protected或public 173. 靜態(tài)成員函數(shù)對類的數(shù)據(jù)成員

35、訪問( )。 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ù)成員( )。 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ù)成員的初始化是在( )中進行的。 A. 構造函數(shù) B. 任何成員函數(shù) C. 所屬類 D. 全局區(qū) 176. 當將一個類A或函數(shù)f()說明為另一個類B的友元后,類A或函數(shù)f()能夠直接訪問類B的( )。 A. 只能是公有成員 B. 只能是保護成員 C. 只能是

36、除私有成員之外的任何成員 D. 具有任何權限的成員 177. 引入友元的主要目的是為了( )。 A. 增強數(shù)據(jù)安全性 B. 提高程序的可靠性 C. 提高程序的效率和靈活性 D. 保證類的封裝性 178. 一個類的成員函數(shù)也可以成為另一個類的友元函數(shù),這時的友元說明( )。 A. 需加上類域的限定 B. 不需加上類域的限定 C. 類域的限定可加可不加 D. 不需要任何限定 179. 一個類的友元不是該類的成員,與該類的關系密切,所以它( )。 A. 有this指針,有默認操作的對象 B. 沒有this指針,可以有默認操作的對象 C. 有this指針,不能執(zhí)行默認操作 D. 沒有this指針,也就

37、沒有默認操作的對象 180. 在重載一個運算符時,其參數(shù)表中沒有任何參數(shù),這表明該運算符是( )。 A. 作為友元函數(shù)重載的1元運算符 B. 作為成員函數(shù)重載的1元運算符 C. 作為友元函數(shù)重載的2元運算符 D. 作為成員函數(shù)重載的2元運算符 181. 在成員函數(shù)中進行雙目運算符重載時,其參數(shù)表中應帶有( )個參數(shù)。 A. 0 B. 1 C. 2 D. 3 196. 從一個基類派生出的各個類的對象之間( )。 A. 共享所有數(shù)據(jù)成員,每個對象還包含基類的所有屬性 B. 共享部分數(shù)據(jù)成員,每個對象還包含基類的所有屬性 C. 不共享任何數(shù)據(jù)成員,但每個對象還包含基類的所有屬性 D. 共享部分數(shù)據(jù)成

38、員和函數(shù)成員 197. 如果是類B在類A的基礎上構造,那么,就稱( )。 A. 類A為基類或父類,類B為超類或子類 B. 類A為基類、父類或超類,類B為派生類或子類 C. 類A為派生類,類B為基類 D. 類A為派生類或子類,類B為基類、父類或超類 198. C+的繼承性允許派生類繼承基類的( )。 A. 部分特性,并允許增加新的特性或重定義基類的特性 B. 部分特性,但不允許增加新的特性或重定義基類的特性 C. 所有特性,并允許增加新的特性或重定義基類的特性 D. 所有特性,但不允許增加新的特性或重定義基類的特性 199. 派生類的成員函數(shù)可以直接訪問基類的( )成員。 A. 所有 B. 公有

39、和保護 C. 保護和私有 D. 私有 200. 對于公有繼承,基類的公有和保護成員在派生類中將( )成員。 A. 全部變成公有 B. 全部變成保護 C. 全部變成私有 D. 仍然相應保持為公有和保護 201. 對于公有繼承,基類中的私有成員在派生類中將 ( )。 A. 能夠直接使用成員名訪問 B. 能夠通過成員運算符訪問 C. 仍然是基類的私有成員 D. 變?yōu)榕缮惖乃接谐蓡T 202. 當保護繼承時,基類的( )在派生類中成為保護成員,在類作用域外不能夠通過派生類的對象來直接訪問該成員。 A. 任何成員 B.公有成員和保護成員 C. 保護成員和私有成員 D.私有成員 203. 在定義一個派生類

40、時,若不使用保留字顯式地規(guī)定采用何種繼承方式,則默認為( )方式。 A. 私有繼承 B. 非私有繼承 C. 保護繼承 D. 公有繼承 204. 建立包含有類對象成員的派生類對象時,自動調(diào)用構造函數(shù)的執(zhí)行順序依次為( )的構造函數(shù)。 A. 自己所屬類、對象成員所屬類、基類 B. 對象成員所屬類、基類、自己所屬類 C. 基類、對象成員所屬類、自己所屬類 D. 基類、自己所屬類、對象成員所屬類 205. 當派生類中有和基類一樣名字的成員時,一般來說,( )。 A. 將產(chǎn)生二義性 B. 派生類的同名成員將覆蓋基類的成員 C. 是不能允許的 D. 基類的同名成員將覆蓋派生類的成員 206. C+中的虛基

41、類機制可以保證:( )。 A. 限定基類只通過一條路徑派生出派生類 B. 允許基類通過多條路徑派生出派生類,派生類也就能多次繼承該基類 C. 當一個類多次間接從基類派生以后,派生類對象能保留多份間接基類的成員 D. 當一個類多次間接從基類派生以后,其基類只被一次繼承 207. 下列對派生類的描述中錯誤的說法是:( )。 A. 派生類至少有一個基類 B. 派生類可作為另一個派生類的基類 C. 派生類除了包含它直接定義的成員外,還包含其基類的成員 D. 派生類所繼承的基類成員的訪問權限保持不變 208. 派生類的對象對其基類中( )可直接訪問。 A. 公有繼承的公有成員 B. 公有繼承的私有成員

42、C. 公有繼承的保護成員 D. 私有繼承的公有成員二、判斷題4返回值類型、參數(shù)個數(shù)和類型都相同的函數(shù)也可以重載。(F)5使用關鍵字class定義的類中缺省的訪問權限是私有(private)的。(T)6類的私有成員只能被類中的成員函數(shù)訪問,任何類以外的函數(shù)對它們的訪問都是非法的。(F)7多繼承情況下,派生類的構造函數(shù)的執(zhí)行順序取決于成員初始化列表中的順序。(F)8在公有繼承中,基類中的公有成員和私有成員在派生類中都是可見的。(F)9在私有繼承中,基類中所有成員對派生類都是不可見的。(F)10在保護繼承中,對于垂直訪問等同于公有繼承,對于水平訪問等同于私有繼承。(T)11構造函數(shù)可以聲明為虛函數(shù)。

43、(F)12在析構函數(shù)中調(diào)用虛函數(shù)時,采用動態(tài)束定。(F)13在一個成員函數(shù)內(nèi)調(diào)用一個虛函數(shù)時,對該虛函數(shù)的調(diào)用進行動態(tài)束定。(T)14公有繼承可以實現(xiàn)子類型。(T)15構造函數(shù)可以聲明為純虛函數(shù)。(F)16.說明函數(shù)原型時不需要指明每個函數(shù)參數(shù)的名字,只需要說明每個參數(shù)的類型和返回值類型就可以了。對17.所有的表達式都有值。錯19.類的靜態(tài)數(shù)據(jù)成員需要在定義每個類的對象時進行初始化。錯20.基類中被說明為protected和private的成員只能被其派生類的成員函數(shù)訪問,不能被其它的函數(shù)訪問。錯21.當將一個類S定義為另一個類A的友元類時,類S的所有成員函數(shù)都可以直接訪問類A的所有成員。對22.當函數(shù)的返回值是數(shù)組類型的,傳遞的是數(shù)組第一個元素的地址。錯23.如果派生類的成員函數(shù)的原型與基類中被定義為虛函數(shù)的成員函數(shù)原型相同,那么,這個函數(shù)自動繼承基類中虛函數(shù)的特性。對24.字符串hello,world”在內(nèi)存中存放時,占用11個字節(jié)的空間。錯25.用new動態(tài)申請的內(nèi)存空間,必須用delete來釋放 。對26.靜態(tài)數(shù)據(jù)成員必須在類外定義和初始化。( )27.保護繼承時,派生類中的成員函數(shù)可以直接訪問基類中的protected成員。( )28.靜態(tài)成員函數(shù)可以引用屬于該類的任何函數(shù)成員。( × )29.指針常量可以指向相應類型的常量

溫馨提示

  • 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

提交評論