影音先锋男人资源在线观看,精品国产日韩亚洲一区91,中文字幕日韩国产,2018av男人天堂,青青伊人精品,久久久久久久综合日本亚洲,国产日韩欧美一区二区三区在线

C++綜合練習(xí) 問題詳解

上傳人:沈*** 文檔編號:83566446 上傳時間:2022-05-01 格式:DOC 頁數(shù):49 大?。?72.50KB
收藏 版權(quán)申訴 舉報 下載
C++綜合練習(xí) 問題詳解_第1頁
第1頁 / 共49頁
C++綜合練習(xí) 問題詳解_第2頁
第2頁 / 共49頁
C++綜合練習(xí) 問題詳解_第3頁
第3頁 / 共49頁

下載文檔到電腦,查找使用更方便

10 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《C++綜合練習(xí) 問題詳解》由會員分享,可在線閱讀,更多相關(guān)《C++綜合練習(xí) 問題詳解(49頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。

1、word 第三章 類和對象 一、選擇題 1. 在一個類的定義中,包含有〔?C? 〕成員的定義。 ??????? A. 數(shù)據(jù)????? B. 函數(shù)????? C. 數(shù)據(jù)和函數(shù)????? D. 數(shù)據(jù)或函數(shù) 2. 在類作用域中能夠通過直接使用該類的〔??D 〕成員名進(jìn)展訪問。 ??????? A. 私有????? B. 公用????? C. 保護(hù)????? D. 任何 3. 假定AA為一個類,a為該類公有的數(shù)據(jù)成員,x為該類的一個對象,如此訪問x對象中數(shù)據(jù)成員a的格式為〔??D 〕。 4. 假定AA為一個類,a()為該類公有的函數(shù)成員,x為該類的一個對象,如此訪問x對象中函

2、數(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?? 〕。 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.GetVal

3、ue() 7. 假定AA為一個類,int a()為該類的一個成員函數(shù),假設(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è)要在該類的一個成員函數(shù)中訪問它,如此書寫格式為〔A?〕。 ??????? A. a????? B. AA::a????? C. a()????? D. AA::a() 9. 假設(shè)需要把一個類外定義的成員函數(shù)指明為聯(lián)函數(shù),如此必須把關(guān)鍵

4、字〔??B〕放在函數(shù)原型或函數(shù)頭的前面。 ??????? A. in????? B. inline????? C. inLine????? D. InLiner 10. 在多文件結(jié)構(gòu)的程序中,通常把類的定義單獨(dú)存放于〔?D? 〕中。 ??????? A. 主文件????? B. 實(shí)現(xiàn)文件????? C. 庫文件????? D. 頭文件 11. 在多文件結(jié)構(gòu)的程序中,通常把類中所有非聯(lián)函數(shù)的定義單獨(dú)存放于〔??B〕中。 ??????? A. 主文件????? B. 實(shí)現(xiàn)文件????? C. 庫文件????? D. 頭文件 12. 在多文件結(jié)構(gòu)的程序中,通常把含有main()函數(shù)的文件

5、稱為〔A?? 〕。 ??????? A. 主文件????? B. 實(shí)現(xiàn)文件????? C. 程序文件????? D. 頭文件 13. 在C++程序中使用的cin標(biāo)識符是系統(tǒng)類庫中定義的〔??A 〕類中的一個對象。 ??????? A. istream????? B. ostream????? C. iostream????? D. fstream 14. 在C++程序中使用的cout標(biāo)識符是系統(tǒng)類庫中定義的〔??B〕類中的一個對象。 ??????? A. istream????? B. ostream????? C. iostream????? D. fstream 15. 假定A

6、A是一個類,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è)該函數(shù)存在對*this賦值的語句,當(dāng)用x.abc()調(diào)用該成員函數(shù)后,x的值〔A?? 〕。 ?????

7、?? A. 已經(jīng)被改變?????? B. 可能被改變 ??? 18. 假定AA是一個類,“AA* abc()const;〞是該類中一個成員函數(shù)的原型,假設(shè)該函數(shù)返回this值,當(dāng)用x.abc()調(diào)用該成員函數(shù)后,x的值〔??C〕。 ??????? A. 已經(jīng)被改變?????? B. 可能被改變 ??????? C. 不變???????????? D. 受到函數(shù)調(diào)用的影響 ??? 19. 類中定義的成員默認(rèn)為〔?B? 〕訪問屬性。 ??????? A. public????? B. private????? C. protected????? D. friend ??? 20.

8、結(jié)構(gòu)中定義的成員默認(rèn)為〔?? A〕訪問屬性。 ??????? A. public????? B. private????? C. protected????? D. friend ??? 21. 當(dāng)類中一個字符指針成員指向具有n個字節(jié)的存儲空間時,它所能存儲字符串的最大長度為(?? C)。 ??????? A. n????? B. n+1????? C. n-1????? D. n-2 ??? 22. 對于一個類的構(gòu)造函數(shù),其函數(shù)名與類名(???A)。 ??????? A. 完全一樣????? B. 根本一樣????? C. 不一樣????? D. 無關(guān)系 ??? 23. 對于一個

9、類的析構(gòu)函數(shù),其函數(shù)名與類名(???C )。 ??????? A. 完全一樣????? B. 完全不同????? C. 只相差一個字符????? D. 無關(guān)系 ??? 24. 類的構(gòu)造函數(shù)是在定義該類的一個(??? C)時被自動調(diào)用執(zhí)行的。 ??????? A. 成員函數(shù)????? B. 數(shù)據(jù)成員????? C. 對象????? D. 友元函數(shù) ??? 25. 類的析構(gòu)函數(shù)是一個對象被(???B)時自動調(diào)用的。 ??????? A. 建立????? B. 撤消????? C. 賦值??????? D. 引用 ??? 26. 一個類的構(gòu)造函數(shù)通常被定義為該類的(???A)成員。 ?

10、?????? A. 公用????? B. 保護(hù)????? C. 私有????? D. 友元 ??? 27. 一個類的析構(gòu)函數(shù)通常被定義為該類的(???C )成員。 ??????? A. 私有????? B. 保護(hù)????? C. 公用????? D. 友元 ??? 28. 假定AB為一個類,如此執(zhí)行 “AB x;〞語句時將自動調(diào)用該類的(???B)。 ??????? A. 帶參構(gòu)造函數(shù)? B. 無參構(gòu)造函數(shù)?? C. 拷貝構(gòu)造函數(shù)?? D. 賦值重載函數(shù) ??? 29. 假定AB為一個類,如此執(zhí)行 “AB x(a,5);〞語句時將自動調(diào)用該類的(??A? )。 ??????? A.

11、 帶參構(gòu)造函數(shù)? B. 無參構(gòu)造函數(shù)?? C. 拷貝構(gòu)造函數(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;〞語句時將自動調(diào)用該類的(??D? )。 ??????? A. 無參構(gòu)造函數(shù)? B. 帶參構(gòu)造函數(shù)?? C. 賦值重載函數(shù)?? D. 拷貝構(gòu)造函數(shù) ??? 32. 假設(shè)需要使類中的一個指針成員指向一塊

12、動態(tài)存儲空間,如此通常在(?B?? )函數(shù)中完成。 ??????? A. 析構(gòu)????? B. 構(gòu)造????? C. 任一成員????? D. 友元 ??? 33. 當(dāng)類中的一個整型指針成員指向一塊具有n*sizeof(int)大小的存儲空間時,它最多能夠存儲(???A)個整數(shù)。 ??????? A. n???????? B. n+1?????? C. n-1????? D. 1 ??? 34. 假定一個類的構(gòu)造函數(shù)為 “A(int aa, int bb) {a=aa; b=aa*bb;}〞,如此執(zhí)行 “A? x(4,5);〞語句后,x.a和x.b的值分別為(???C)。 ?????

13、?? A. 4和5???? B. 5和4????? C. 4和20????? D. 20和5 ??? 35. 假定一個類的構(gòu)造函數(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)為該類的拷貝構(gòu)造函數(shù)的原型說明。 ??????? A. AB(AB x);??? B. AB(AB& x);???? C. void AB(AB& x)

14、;???? D. AB(int x); ??? 37. 假定一個類的構(gòu)造函數(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,當(dāng)用戶不定義任何構(gòu)造函數(shù)時,系統(tǒng)為該類定義的無參構(gòu)造函數(shù)為(???D )。 ??????? A. AB() {a=0;}??????????? B. AB(int aa=0): a(aa) {} ???

15、???? C. AB(int aa): a(aa) {}?? D. AB() {} ??? 39. 假定一個類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) {} ??? 40. 對于任一個類,用戶所能定義的構(gòu)造函數(shù)的個數(shù)至多為(??D? )。 ??????? A. 0????? B. 1????? C. 2????? D. 任意個 ??? 4

16、1. 對于任一個類,用戶所能定義的析構(gòu)函數(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. 設(shè)px是指向一個類對象的指針變量,如此執(zhí)行 “delete px;〞語句時,將自動調(diào)用該類的(??C? )。 ??????? A. 無參構(gòu)造函數(shù)??? B

17、. 帶參構(gòu)造函數(shù)??? C. 析構(gòu)函數(shù)??? D. 拷貝構(gòu)造函數(shù) ??? 44. 當(dāng)一個類對象離開它的作用域時,系統(tǒng)自動調(diào)用該類的(???D )。 ??????? A. 無參構(gòu)造函數(shù)??? B. 帶參構(gòu)造函數(shù)??? C. 拷貝構(gòu)造函數(shù)? D. 析構(gòu)函數(shù) ??? 45. 假定一個類對象數(shù)組為A[n],當(dāng)離開它定義的作用域時,系統(tǒng)自動調(diào)用該類析構(gòu)函數(shù)的次數(shù)為(?C )。 ??????? A. 0????? B. 1????? C. n????? D. n-1 ??? 46. 假定AB為一個類,如此執(zhí)行 “AB a[10];〞語句時調(diào)用該類無參構(gòu)造函數(shù)的次數(shù)為(??D? )。 ?????

18、?? A. 0????? B. 1????? C. 9????? D. 10 ??? 47. 假定AB為一個類,如此執(zhí)行 “AB *px=new AB[n];〞語句時調(diào)用該類無參構(gòu)造函數(shù)的次數(shù)為(???A)。 ??????? A. n????? B. n-1????? C. 1????? D. 0 ??? 48. 假定AB為一個類,如此執(zhí)行 “AB a, b(3), *p;〞語句時共調(diào)用該類構(gòu)造函數(shù)的次數(shù)為(??A? )。 ??????? A. 2????? B. 3????? C. 4????? D. 5 ??? 49. 假定AB為一個類,如此執(zhí)行 “AB a(2), b[3],

19、*p[4];〞語句時共調(diào)用該類構(gòu)造函數(shù)的次數(shù)為(B??? )。 ??????? A. 3????? B. 4????? C. 5????? D. 9 ??? 50. 假定AB為一個類,如此執(zhí)行“AB a, b(2), c[3], *p=&a;〞語句時共調(diào)用該類無參構(gòu)造函數(shù)的次數(shù)為(?D)。 ??????? A. 5????? B. 6????? C. 3????? D. 4 ??? 51. 假定AB為一個類,如此執(zhí)行“AB *p=new AB(1,2);〞語句時共調(diào)用該類構(gòu)造函數(shù)的次數(shù)為(???B )。 ??????? A. 0????? B. 1????? C. 2????? D.

20、 3 ??? 52. 假定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 ???53. 對類對象成員的初始化是通過構(gòu)造函數(shù)中給出的(??D? )實(shí)現(xiàn)的。 ??????? A. 函數(shù)體????? B. 初始化表????? C. 參數(shù)表????? D. 初始化表或函數(shù)體 ??? 54. 對類中常量成員的初始化是通過構(gòu)造函數(shù)中給出的(??C? )實(shí)現(xiàn)的。 ??????? A. 函數(shù)體????? B.

21、 參數(shù)表??????? C. 初始化表????? D. 初始化表或函數(shù)體 ??? 55. 對類中引用成員的初始化是通過構(gòu)造函數(shù)中給出的(???C )實(shí)現(xiàn)的。 ??????? A. 函數(shù)體????? B. 參數(shù)表??????? C. 初始化表????? D. 初始化表或函數(shù)體 ??? 56. 一個類的靜態(tài)數(shù)據(jù)成員所表示屬性 (?C? )。 ??????? A. 是類的或?qū)ο蟮膶傩????????? B. 只是對象的屬性 ??????? C. 只是類的屬性??????????????? D. 類和友元的屬性 ??? 57. 類的靜態(tài)成員的訪問控制〔?D? 〕。 ??????

22、? 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)。 ?

23、?????? 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 〕中進(jìn)展的。 ??????? A. 構(gòu)造函數(shù)????????????????? B. 任何成員函數(shù) ??????? C. 所屬類??????????????????? D. 全局區(qū) ??? 61. 當(dāng)將一個類A或函數(shù)f()說明為另一個類B的友元后,類A或函數(shù)f()能夠直接訪問類B的〔??D? 〕。 ??????? A. 只能是公有成員?

24、???????????????????? B. 只能是保護(hù)成員 ??????? C. 只能是除私有成員之外的任何成員????? D. 具有任何權(quán)限的成員 ??? 62. 引入友元的主要目的是為了〔??C? 〕。 ??????? A. 增強(qiáng)數(shù)據(jù)安全性???????????? B. 提高程序的可靠性 ??????? C. 提高程序的效率和靈活性???? D. 保證類的封裝性 ??? 63. 一個類的成員函數(shù)也可以成為另一個類的友元函數(shù),這時的友元說明〔??A? 〕。 ??????? A. 需加上類域的限定??????????? B. 不需加上類域的限定 ??????? C. 類域的

25、限定可加可不加??????? D. 不需要任何限定 ??? 64. 一個類的友元不是該類的成員,與該類的關(guān)系密切,所以它〔??D? 〕。 ??????? A. 有this指針,有默認(rèn)操作的對象?? ??????? B. 沒有this指針,可以有默認(rèn)操作的對象 ??????? C. 有this指針,不能執(zhí)行默認(rèn)操作 ??????? D. 沒有this指針,也就沒有默認(rèn)操作的對象 二、程序填充題 1. 一個類的定義如下: #include class AA { int a[10]; int n; public: void SetA(int a

26、a[], int nn); //用數(shù)組aa初始化數(shù)據(jù)成員a,用nn初始化數(shù)據(jù)成員n int MaxA(); //從數(shù)組a中前n個元素中查找最大值 void SortA(); //采用選擇排序的方法對數(shù)組a中前n個元素,進(jìn)展從小到大排序 void InsertA();//采用插入排序的方法對數(shù)組a中前n個元素進(jìn)展從小到大排序 void PrintA(); //依次輸出數(shù)組a中的前n個元素 }; 該類中MaxA()函數(shù)的實(shí)現(xiàn)如下,請?jiān)跇?biāo)號位置補(bǔ)充適當(dāng)?shù)娜荨? int ____(1)__AA::Max()___ { int x=a[0]; for(

27、int i=1; ix) ___(2) x=a[ i ]___; ___(3)_return x__; } 2. 一個類的定義如下: #include class AA { int a[10]; int n; public: void SetA(int aa[], int nn); //用數(shù)組aa初始化數(shù)據(jù)成員a,用nn初始化數(shù)據(jù)成員n int MaxA(); //從數(shù)組a中前n個元素中查找最大值 void SortA(); //采用選擇排序的方法對數(shù)組a中前n個元素,進(jìn)展從小到大排序 vo

28、id InsertA();//采用插入排序的方法對數(shù)組a中前n個元素進(jìn)展從小到大排序 void PrintA(); //依次輸出數(shù)組a中的前n個元素 }; void AA::SortA() { int i,j; for(i=0; ___(1)i

29、 class AA { int a[10]; int n; public: void SetA(int aa[], int nn); //用數(shù)組aa初始化數(shù)據(jù)成員a,用nn初始化數(shù)據(jù)成員n int MaxA(); //從數(shù)組a中前n個元素中查找最大值 void SortA(); //采用選擇排序的方法對數(shù)組a中前n個元素,進(jìn)展從小到大排序 void InsertA();//采用插入排序的方法對數(shù)組a中前n個元素進(jìn)展從小到大排序 void PrintA(); //依次輸出數(shù)組a中的前n個元素 }; void ___(1)__AA::Insert()_ {

30、 int i,j; for(i=1; i=0; j--) if(x class AA { int a[10]; int n; public: void SetA(int aa[], int nn); //用數(shù)組aa初始化數(shù)據(jù)成員a,用nn初始化數(shù)據(jù)成員n int MaxA(); //從數(shù)組a中

31、前n個元素中查找最大值 void SortA(); //采用選擇排序的方法對數(shù)組a中前n個元素,進(jìn)展從小到大排序 void InsertA();//采用插入排序的方法對數(shù)組a中前n個元素進(jìn)展從小到大排序 void PrintA(); //依次輸出數(shù)組a中的前n個元素,最后輸出一個換行 }; 使用該類的主函數(shù)如下: void main() { int a[10]={23,78,46,55,62,76,90,25,38,42}; AA x; ___(1)__x.SetA(a,6)_; int m=___(2)_x.MaxA()__; ___(3)_x

32、.PrintA()__; cout< class AA { int a[10]; int n; public: void SetA(int aa[], int nn); //用數(shù)組aa初始化數(shù)據(jù)成員a,用nn初始化數(shù)據(jù)成員n int MaxA(); //從數(shù)組a中前n個元素中查找最大值 void SortA(); //采用選擇排序的方法對數(shù)組a中前n個元素,進(jìn)展從小到大

33、排序 void PrintA(); //依次輸出數(shù)組a中的前n個元素,最后輸出一個換行 }; 使用該類的主函數(shù)如下: void main() { int a[10]={23,78,46,55,62,76,90,25,38,42}; ___(1)_AA x__; x.SetA(a,8); int ___(2)_m=x.MaxA( )__; ___(3)_x.Sort( )__; x.PrintA(); cout<

34、數(shù)組實(shí)現(xiàn)棧的類定義如下: const int ARRAY_SIZE=10; class Stack { public: void Init() {top=-1;} //初始化棧為空 void Push(int newElem); //向棧中壓入一個元素 int Pop(); //從棧頂彈出一個元素 bool Empty() { //判棧空 if(top==-1) return true;else return false;} int Depth() {return top+1;} //返回棧的深

35、度 void Print(); //按照后進(jìn)先出原如此依次輸出棧中每個元素,直到棧空為止 private: int elem[ARRAY_SIZE]; //用于保存棧元素的數(shù)組 int top; //指明棧頂元素位置的指針 }; void Stack::Push(int newElem) { if(___(1)_top==ARRAY_SIZE-1__) { cout<<"棧滿!"<

36、newElem__; } 7. 一個利用數(shù)組實(shí)現(xiàn)棧的類定義如下: const int ARRAY_SIZE=10; class Stack { public: void Init() {top=-1;} //初始化棧為空 void Push(int newElem); //向棧中壓入一個元素 int Pop(); //從棧頂彈出一個元素 bool Empty() { //判??? if(top==-1) return true;else return false;} int Depth() {retur

37、n top+1;} //返回棧的深度 void Print(); //按照后進(jìn)先出原如此依次輸出棧中每個元素,直到棧空為止 private: int elem[ARRAY_SIZE]; //用于保存堆棧元素的數(shù)組 int top; //指明棧頂元素位置的指針 }; 該類的Pop和Print函數(shù)的實(shí)現(xiàn)分別如下: ___(1)_int Stack::Pop__ { if(top==-1) { cout<<"棧空!"<

38、op--]__; } void Stack::Print() { while(!Empty()) cout<<___(3)_Pop( )__ <<' '; } 8.class A { int a; public: A() {a=0;} ___(1)A(int aa):a(aa)___{} //定義構(gòu)造函數(shù),用參數(shù)aa初始化數(shù)據(jù)成員a }; main() { ___(2)_A *p__; //定義類A的指針對象p ___(3) p=new A(5)__; //用p指向動態(tài)對象并初始化

39、為整數(shù)5 } 9.class A { char *a; public: ___(1)_A( ) {a=0;}__ //定義無參構(gòu)造函數(shù),使a的值為空 A(char *aa) { a=___(2)_new char [strlen(aa)+1]__; strcpy(a,aa); //用aa所指字符串初始化a所指向的動態(tài)存儲空間 } ___(3)_~A( ){delete [ ]a}__ //定義析構(gòu)函數(shù),刪除a所指向的動態(tài)存儲空間 }; 10.class A

40、 { int a,b; public: A(int aa=0, int bb=0) :a(aa),b(bb)___(1)___ {} //分別用aa和bb對應(yīng)初始化a和b }; main() { ___(2)A x(5) , y(x)___ ; //定義類A的對象x并用5初始化,同時定義y并用x初始化 ___(3)_A *p=x__ ; //定義p指針,使之指向?qū)ο髕 } 11.class A { int a,b; public: ___(1)_A(int aa=0,int bb

41、=0){a=aa;b=bb;}__ //定義構(gòu)造函數(shù),使參數(shù)aa和bb的默認(rèn)值為0, //在函數(shù)體中用aa初始化a,用bb初始化b }; main() { A *p1, *p2; ___(2)_p1=new A__ ; //調(diào)用無參構(gòu)造函數(shù)生成由p1指向的動態(tài)對象 ___(3)_p2=new A (4,5)__ ; //調(diào)用帶參構(gòu)造函數(shù)生成由p2指向的動態(tài)對象, //使a和b成員分別被初始化為4和5 } 12. #include #include

42、dlib.h> class A { int *a; int n; int MaxLen; public: A(): a(0), n(0), MaxLen(0) {} A(int *aa, int nn, int MM) { n=nn; MaxLen=MM; if(n>MaxLen) exit(1); ___(1)a=new int [Maxlen]___; //由a指向長度為MaxLen的動態(tài)數(shù)組 for(int i=0; i

43、 a[i]=aa[i]; } ~A() {delete []a;} int GetValue(int i) ___(2)_return a[i];__ //函數(shù)體返回a[i]的值 }; void main() { int b[10]={1,2,3,4,5,6,7,8,9,10}; A r(b,10,10); int i,s=0; for(i=0; i<10; i++)___(3) s+=r.GetValue(i);___ //把r對象的a數(shù)據(jù)成員中的每個

44、 //元素值依次累加到s中 cout<<"s="< #include class A { int *a; int n; int MaxLen; public: A(): a(0), n(0), MaxLen(0) {} A(int *aa, int nn, int MM) { n=nn;

45、 MaxLen=MM; if(n>MaxLen) exit(1); a=new int[MaxLen]; ___(1)for(int i=0;i

46、___ //析構(gòu)函數(shù)的類外定義 void main() { int b[10]={1,2,3,4,5,6,7,8,9,10}; A r(b,10,10); int i,s=0; ___(3) for(i=0; i<10; i++) s+=r.GetValue(i);___ ; //以i為循環(huán)變量,把r對象的a數(shù)據(jù)成員中的 //每個元素值依次累加到s中 cout<<"s="<

47、 class Goods { private: char gd_name[20]; //商品名稱 int weight; //商品重量 static int totalweight; //同類商品總重量 public: Goods (char*str,int w){ //構(gòu)造函數(shù) strcpy(gd_name,str); weight=w; totalweight+=weight; } ~ Goods (){totalweight -= w

48、eight;} char* GetN(){___(1) return gd_name ___;} //返回商品名稱 int GetW(){return weight;} ___(2)_static int __ GetTotal_Weight() { //定義靜態(tài)成員函數(shù)返回總重量 ___(3)_return totalweight __; } } 三、寫出如下程序的運(yùn)行結(jié)果 1. #include #include class CD { char* a;

49、 int b; public: void Init(char* aa, int bb) { a=new char[strlen(aa)+1]; strcpy(a,aa); b=bb; } char* Geta() {return a;} int Getb() {return b;} void Output() {cout<

50、cdef",30); dy.Init("shenyafen",3*dx.Getb()+5); dx.Output(); dy.Output(); } 2.#include #include class CD { char* a; int b; public: void Init(char* aa, int bb) { a=new char[strlen(aa)+1]; str

51、cpy(a,aa); b=bb; } char* Geta() {return a;} int Getb() {return b;} void Output() {cout<

52、 dx.Output(); dy.Output(); } 3. #include class CE { private: int a,b; int getmax() {return (a>b? a:b);} public: int c;第3題運(yùn)行結(jié)果: void SetValue(int x1,int x2, int x3) { a=x1; b=x2; c=x3;

53、 } int GetMax(); }; int CE::GetMax() { int d=getmax(); return (d>c? d:c); } void main() { int x=5,y=12,z=8; CE ex, *ep=&ex; ex.SetValue(x,y,z); cout<SetValue(x+y,y-z,20); cout<GetMax()< class CE

54、{ private: int a,b; int getmin() {return (a

55、eturn (dSetValue(x+y,y-z,10); cout<GetMin()< class Franction { //定義分?jǐn)?shù)類 int nume; //定義分子 int deno; //定義分母

56、 public: //把*this化簡為最簡分?jǐn)?shù),具體定義在另外文件中實(shí)現(xiàn) void FranSimp(); //返回兩個分?jǐn)?shù)*this和x之和,具體定義在另外文件中實(shí)現(xiàn) Franction FranAdd(const Franction& x); //置分?jǐn)?shù)的分子和分母分別0和1 void InitFranction() {nume=0; deno=1;} //置分?jǐn)?shù)的分子和分母分別n和d void InitFranction(int n, int d) {

57、nume=n; deno=d;} //輸出一個分?jǐn)?shù) void FranOutput() {cout<

58、a: "; a.FranOutput(); cout<<"b: "; b.FranOutput(); cout<<"c: "; c.FranOutput(); cout<<"d: "; d.FranOutput(); } 第5題答案: a:7/12 b:-3/8 c:5/24 d:19/24 6. #include class Franction { //定義分?jǐn)?shù)類 int nume; //定義分子 int deno

59、; //定義分母 public: //把*this化簡為最簡分?jǐn)?shù),具體定義在另外文件中實(shí)現(xiàn) void FranSimp(); //返回兩個分?jǐn)?shù)*this和x之和,具體定義在另外文件中實(shí)現(xiàn) Franction FranAdd(const Franction& x); //置分?jǐn)?shù)的分子和分母分別0和1 void InitFranction() {nume=0; deno=1;} //置分?jǐn)?shù)的分子和分母分別n和d void InitFrancti

60、on(int n, int d) {nume=n; deno=d;} //輸出一個分?jǐn)?shù) void FranOutput() {cout<

61、FranAdd(a); 第6題答案: cout<<"a: "; a.FranOutput(); a:6/15 cout<<"b: "; b.FranOutput();b:3/10 cout<<"c: "; c.FranOutput(); c:7/10 cout<<"d: "; d.FranOutput();d:11/10 } 7. #include #include class A { char *a; public: A(char *s) {第

62、7題運(yùn)行結(jié)果: a=new char[strlen(s)+1]; strcpy(a,s); cout< class A { int *a; publi

63、c: A(int x=0):a(new int(x)){} ~A() {delete a;} int getA() {return *a;} void setA(int x) {*a=x;} }; void main() { A x1,x2(3);第8題運(yùn)行結(jié)果: A *p=&x2; p->setA(x2.getA()+5); x1.setA(15+x1.getA()); cout< c

64、lass A { int a; public: A(int aa=0): a(aa) {cout< class A { int a,b; public: A() {a=b=0

65、;} A(int aa, int bb) {a=aa; b=bb;} int Sum() {return a+b;}第10題運(yùn)行結(jié)果: int* Mult() { int *p=new int(a*b); return p; } }; void main() { int *k; A x(2,3), *p; p=new A(4,5); cout<Sum()<<' '<<*(k=p->Mult())<

66、. #include class A { int a[10]; int n; public: A(int aa[], int nn): n(nn) { for(int i=0; i展開閱讀全文

溫馨提示:
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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!