《面向對象程序設計》C綜合練習(學生版)-含答案.doc
《《面向對象程序設計》C綜合練習(學生版)-含答案.doc》由會員分享,可在線閱讀,更多相關《《面向對象程序設計》C綜合練習(學生版)-含答案.doc(46頁珍藏版)》請在裝配圖網(wǎng)上搜索。
C++面向對象 程序設計習題冊 姓名 學號 學院 班級 第三章 類和對象 考核題型: (1)填空題 (2)選擇題 (3)簡答題(4)程序閱讀題(5)程序設計題(其中,基礎知識題占70%左右,中等難度的題占20%左右,難題占10%左右) 一、選擇題 1. 在一個類的定義中,包含有(C )成員的定義。 A. 數(shù)據(jù) B. 函數(shù) C. 數(shù)據(jù)和函數(shù) D. 數(shù)據(jù)或函數(shù) 2. 在類作用域中能夠通過直接使用該類的(D )成員名進行訪問。 A. 私有 B. 公用 C. 保護 D. 任何 3. 假定AA為一個類,a為該類公有的數(shù)據(jù)成員,x為該類的一個對象,則訪問x對象中數(shù)據(jù)成員a的格式為(D )。 A. x(a) B. x[a] C. x->a D. x.a 4. 假定AA為一個類,a()為該類公有的函數(shù)成員,x為該類的一個對象,則訪問x對象中函數(shù)成員a()的格式為(B )。 A. x.a B. x.a() C. x->a D. x->a() 5. 假定AA為一個類,a為該類公有的數(shù)據(jù)成員,px為指向該類對象的一個指針,則訪問px所指對象中數(shù)據(jù)成員a的格式為(C )。 A. px(a) B. px[a] C. px->a D. px.a 6. 假定AA為一個類,a為該類私有的數(shù)據(jù)成員,GetValue()為該類公有函數(shù)成員,它返回a的值,x為該類的一個對象,則訪問x對象中數(shù)據(jù)成員a的格式為( D)。 A. x.a B. x.a() C. x->GetValue() D. x.GetValue() 7. 假定AA為一個類,int a()為該類的一個成員函數(shù),若該成員函數(shù)在類定義體外定義,則函數(shù)頭為(A )。 A. int AA::a() B. int AA:a() C. AA::a() D. AA::int a() 8. 假定AA為一個類,a為該類公有的數(shù)據(jù)成員,若要在該類的一個成員函數(shù)中訪問它,則書寫格式為(A)。 A. a B. AA::a C. a() D. AA::a() 9. 若需要把一個類外定義的成員函數(shù)指明為內聯(lián)函數(shù),則必須把關鍵字(B )放在函數(shù)原型或函數(shù)頭的前面。 A. in B. inline C. inLine D. InLiner 10. 在多文件結構的程序中,通常把類的定義單獨存放于(D )中。 A. 主文件 B. 實現(xiàn)文件 C. 庫文件 D. 頭文件 11. 在多文件結構的程序中,通常把類中所有非內聯(lián)函數(shù)的定義單獨存放于( B)中。 A. 主文件 B. 實現(xiàn)文件 C. 庫文件 D. 頭文件 12. 在多文件結構的程序中,通常把含有main()函數(shù)的文件稱為(A )。 A. 主文件 B. 實現(xiàn)文件 C. 程序文件 D. 頭文件 13. 在C++程序中使用的cin標識符是系統(tǒng)類庫中定義的(A )類中的一個對象。 A. istream B. ostream C. iostream D. fstream 14. 在C++程序中使用的cout標識符是系統(tǒng)類庫中定義的(B )類中的一個對象。 A. istream B. ostream C. iostream D. fstream 15. 假定AA是一個類,abc是該類的一個成員函數(shù),則參數(shù)表中隱含的第一個參數(shù)的類型為(D )。 A. int B. char C. AA D. AA* 16. 假定AA是一個類,abc是該類的一個成員函數(shù),則參數(shù)表中隱含的第一個參數(shù)為( C)。 A. abc B. *this C. this D. this& 17. 假定AA是一個類,“AA& abc();”是該類中一個成員函數(shù)的原型,若該函數(shù)存在對*this賦值的語句,當用x.abc()調用該成員函數(shù)后,x的值(A )。 A. 已經(jīng)被改變 B. 可能被改變 C. 不變 D.不受函數(shù)調用的影響 18. 假定AA是一個類,“AA* abc()const;”是該類中一個成員函數(shù)的原型,若該函數(shù)返回this值,當用x.abc()調用該成員函數(shù)后,x的值(C )。 A. 已經(jīng)被改變 B. 可能被改變 C. 不變 D. 受到函數(shù)調用的影響 19. 類中定義的成員默認為(B )訪問屬性。 A. public B. private C. protected D. friend 20. 結構中定義的成員默認為( A)訪問屬性。 A. public B. private C. protected D. friend 21. 當類中一個字符指針成員指向具有n個字節(jié)的存儲空間時,它所能存儲字符串的最大長度為( C )。 A. n B. n+1 C. n-1 D. n-2 22. 對于一個類的構造函數(shù),其函數(shù)名與類名(A )。 A. 完全相同 B. 基本相同 C. 不相同 D. 無關系 23. 對于一個類的析構函數(shù),其函數(shù)名與類名(C )。 A. 完全相同 B. 完全不同 C. 只相差一個字符 D. 無關系 24. 類的構造函數(shù)是在定義該類的一個( C)時被自動調用執(zhí)行的。 A. 成員函數(shù) B. 數(shù)據(jù)成員 C. 對象 D. 友元函數(shù) 25. 類的析構函數(shù)是一個對象被( B)時自動調用的。 A. 建立 B. 撤消 C. 賦值 D. 引用 26. 一個類的構造函數(shù)通常被定義為該類的(A )成員。 A. 公用 B. 保護 C. 私有 D. 友元 27. 一個類的析構函數(shù)通常被定義為該類的(C )成員。 A. 私有 B. 保護 C. 公用 D. 友元 28. 假定AB為一個類,則執(zhí)行 “AB x;”語句時將自動調用該類的(B )。 A. 帶參構造函數(shù) B. 無參構造函數(shù) C. 拷貝構造函數(shù) D. 賦值重載函數(shù) 29. 假定AB為一個類,則執(zhí)行 “AB x(a,5);”語句時將自動調用該類的(A )。 A. 帶參構造函數(shù) B. 無參構造函數(shù) C. 拷貝構造函數(shù) D. 賦值重載函數(shù) 30. 假定AB為一個類,則執(zhí)行 “AB *s=new AB(a,5);”語句時得到的一個動態(tài)對象為____D___。 A. s B. s->a C. s.a D. *s 31. 假定AB為一個類,則執(zhí)行 “AB r1=r2;”語句時將自動調用該類的(D )。 A. 無參構造函數(shù) B. 帶參構造函數(shù) C. 賦值重載函數(shù) D. 拷貝構造函數(shù) 32. 若需要使類中的一個指針成員指向一塊動態(tài)存儲空間,則通常在(B )函數(shù)中完成。 A. 析構 B. 構造 C. 任一成員 D. 友元 33. 當類中的一個整型指針成員指向一塊具有n*sizeof(int)大小的存儲空間時,它最多能夠存儲(A )個整數(shù)。 A. n B. n+1 C. n-1 D. 1 34. 假定一個類的構造函數(shù)為 “A(int aa, int bb) {a=aa; b=aa*bb;}”,則執(zhí)行 “A x(4,5);”語句后,x.a和x.b的值分別為(C )。 A. 4和5 B. 5和4 C. 4和20 D. 20和5 35. 假定一個類的構造函數(shù)為 “A(int aa=1, int bb=0) {a=aa; b=bb;}”,則執(zhí)行 “A x(4);”語句后,x.a和x.b的值分別為(D )。 A. 1和0 B. 1和4 C. 4和1 D. 4和0 36. 假定AB為一個類,則(B )為該類的拷貝構造函數(shù)的原型說明。 A. AB(AB x); B. AB(AB& x); C. void AB(AB& x); D. AB(int x); 37. 假定一個類的構造函數(shù)為 “B(int ax, int bx): a(ax), b(bx) {}”,執(zhí)行 “B x(1,2),y(3,4);x=y;”語句序列后x.a的值為(C )。 A. 1 B. 2 C. 3 D. 4 38. 假定一個類AB只含有一個整型數(shù)據(jù)成員a,當用戶不定義任何構造函數(shù)時,系統(tǒng)為該類定義的無參構造函數(shù)為(D )。 A. AB() {a=0;} B. AB(int aa=0): a(aa) {} C. AB(int aa): a(aa) {} D. AB() {} 39. 假定一個類AB只含有一個整型數(shù)據(jù)成員a,用戶為該類定義的帶參構造函數(shù)可以為(C )。 A. AB() {} B. AB(): a(0){} C. AB(int aa=0) {a=aa;} D. AB(int aa) {} 40. 對于任一個類,用戶所能定義的構造函數(shù)的個數(shù)至多為(D )。 A. 0 B. 1 C. 2 D. 任意個 41. 對于任一個類,用戶所能定義的析構函數(shù)的個數(shù)至多為(B )。 A. 0 B. 1 C. 2 D. 任意個 42. 假定AB為一個類,則執(zhí)行 “AB *px=new AB[n];”語句時將(A )。 A. 動態(tài)分配一個數(shù)組 B. 動態(tài)分配一個對象 C. 靜態(tài)分配一個數(shù)組 D. 靜態(tài)分配一個對象 43. 設px是指向一個類對象的指針變量,則執(zhí)行 “delete px;”語句時,將自動調用該類的(C )。 A. 無參構造函數(shù) B. 帶參構造函數(shù) C. 析構函數(shù) D. 拷貝構造函數(shù) 44. 當一個類對象離開它的作用域時,系統(tǒng)自動調用該類的(D )。 A. 無參構造函數(shù) B. 帶參構造函數(shù) C. 拷貝構造函數(shù) D. 析構函數(shù) 45. 假定一個類對象數(shù)組為A[n],當離開它定義的作用域時,系統(tǒng)自動調用該類析構函數(shù)的次數(shù)為(C )。 A. 0 B. 1 C. n D. n-1 46. 假定AB為一個類,則執(zhí)行 “AB a[10];”語句時調用該類無參構造函數(shù)的次數(shù)為(D )。 A. 0 B. 1 C. 9 D. 10 47. 假定AB為一個類,則執(zhí)行 “AB *px=new AB[n];”語句時調用該類無參構造函數(shù)的次數(shù)為(A )。 A. n B. n-1 C. 1 D. 0 48. 假定AB為一個類,則執(zhí)行 “AB a, b(3), *p;”語句時共調用該類構造函數(shù)的次數(shù)為(A )。 A. 2 B. 3 C. 4 D. 5 49. 假定AB為一個類,則執(zhí)行 “AB a(2), b[3], *p[4];”語句時共調用該類構造函數(shù)的次數(shù)為(B )。 A. 3 B. 4 C. 5 D. 9 50. 假定AB為一個類,則執(zhí)行“AB a, b(2), c[3], *p=&a;”語句時共調用該類無參構造函數(shù)的次數(shù)為(D )。 A. 5 B. 6 C. 3 D. 4 51. 假定AB為一個類,則執(zhí)行“AB *p=new AB(1,2);”語句時共調用該類構造函數(shù)的次數(shù)為(B )。 A. 0 B. 1 C. 2 D. 3 52. 假定AB為一個類,px為指向該類的一個含有n個對象的動態(tài)數(shù)組的指針,則執(zhí)行“delete []px;”語句時共調用該類析構函數(shù)的次數(shù)為(C )。 A. 0 B. 1 C. n D. n+1 53. 對類對象成員的初始化是通過構造函數(shù)中給出的(D )實現(xiàn)的。 A. 函數(shù)體 B. 初始化表 C. 參數(shù)表 D. 初始化表或函數(shù)體 54. 對類中常量成員的初始化是通過構造函數(shù)中給出的(C )實現(xiàn)的。 A. 函數(shù)體 B. 參數(shù)表 C. 初始化表 D. 初始化表或函數(shù)體 55. 對類中引用成員的初始化是通過構造函數(shù)中給出的(C )實現(xiàn)的。 A. 函數(shù)體 B. 參數(shù)表 C. 初始化表 D. 初始化表或函數(shù)體 56. 一個類的靜態(tài)數(shù)據(jù)成員所表示屬性 (C )。 A. 是類的或對象的屬性 B. 只是對象的屬性 C. 只是類的屬性 D. 類和友元的屬性 57. 類的靜態(tài)成員的訪問控制(D )。 A. 只允許被定義為private B. 只允許被定義為private或protected C. 只允許被定義為public D. 可允許被定義為private、protected或public 58. 靜態(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ù)成員 59. 被非靜態(tài)成員函數(shù)訪問的類的數(shù)據(jù)成員(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ù)成員 60. 靜態(tài)數(shù)據(jù)成員的初始化是在(D )中進行的。 A. 構造函數(shù) B. 任何成員函數(shù) C. 所屬類 D. 全局區(qū) 61. 當將一個類A或函數(shù)f()說明為另一個類B的友元后,類A或函數(shù)f()能夠直接訪問類B的(D )。 A. 只能是公有成員 B. 只能是保護成員 C. 只能是除私有成員之外的任何成員 D. 具有任何權限的成員 62. 引入友元的主要目的是為了(C )。 A. 增強數(shù)據(jù)安全性 B. 提高程序的可靠性 C. 提高程序的效率和靈活性 D. 保證類的封裝性 63. 一個類的成員函數(shù)也可以成為另一個類的友元函數(shù),這時的友元說明(A )。 A. 需加上類域的限定 B. 不需加上類域的限定 C. 類域的限定可加可不加 D. 不需要任何限定 64. 一個類的友元不是該類的成員,與該類的關系密切,所以它(D )。 A. 有this指針,有默認操作的對象 B. 沒有this指針,可以有默認操作的對象 C. 有this指針,不能執(zhí)行默認操作 D. 沒有this指針,也就沒有默認操作的對象 二、程序填充題 1. 已知一個類的定義如下: #include- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權。
- 關 鍵 詞:
- 面向對象程序設計 面向 對象 程序設計 綜合 練習 學生 答案
裝配圖網(wǎng)所有資源均是用戶自行上傳分享,僅供網(wǎng)友學習交流,未經(jīng)上傳用戶書面授權,請勿作他用。
鏈接地址:http://kudomayuko.com/p-8866669.html