版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、計(jì)算機(jī)學(xué)院 2010 級高級語言程序設(shè)計(jì) II 計(jì)期末試卷 一、單項(xiàng)選擇題(本大題共 10 小題,每小題 2 分,共 20 分)在每小題列出的四個(gè)備 選項(xiàng)中,只有一個(gè)是符合題目要求的,請將其代碼填寫在題后的括號內(nèi)。錯(cuò)選、多選或未 選均無分。 1下列語句中,錯(cuò)誤的是() 。 A ) const int buffer = 256 。B) const int tem。 C) const double *point 。D) double * const pt = new double(5.5) 。 參考答案: B 2有以下函數(shù)模板: template Type Area(const Type &siz
2、e) return size * size 。 其中 Type 是 ( )。 A )函數(shù)形參 B )函數(shù)實(shí)參 C)模板類型形參D)模板類型實(shí)參 參考答案: C 3由于常對象不能被更新,因此() 。 A )通過常對象只能調(diào)用它的常成員函數(shù) B) 通過常對象只能調(diào)用靜態(tài)成員函數(shù) C) 常對象的成員都是常成員 D) 通過常對象可以調(diào)用任何不改變對象值的成員函數(shù) 參考答案: A 4如果派生類以public 方式繼承基類,則原基類的 protected 成員和 public 成員在派 生類中的訪問屬性分別是 ()。 A ) public 和 publicB ) public 和 protected C)
3、 protected 禾口 publicD) protected 禾口 protected 參考答案: C 5下列關(guān)于 this 指針的敘述中,正確的是 ()。 A)與類相關(guān)的所有函數(shù)都含有this指針 B )所有類的成員函數(shù)都有this指針 C) 類的所有友元函數(shù)都有this指針 D) 只有類的非靜態(tài)成員函數(shù)才有this指針 參考答案: D 6.在C+中,用于實(shí)現(xiàn)編譯時(shí)多態(tài)性的是()。 A )友元函數(shù)B )重載函數(shù) C)靜態(tài)成員函數(shù)D)虛函數(shù) 參考答案: B 7.在下列函數(shù)原型中,可以作為類 AA 構(gòu)造函數(shù)的是 ()。 A ) void AA(int) 。B) int AA() 。 C) A
4、A(int) 。D) AA(int) 。 參考答案: D 8使用 ifstream 流類定義流對象并打開磁盤文件時(shí),文件的默認(rèn)打開方式為 ( ) 。 A) ios:inB) ios:out C) ios:in | ios:outD )沒有默認(rèn)的打開方式 參考答案: A 9在下面 4 個(gè)關(guān)鍵字中,用于說明虛基類的是 ( )。 A ) virtualB ) public C) protectedD ) private 參考答案: A 10在面向?qū)ο蠓椒ㄖ?,?shí)現(xiàn)信息隱蔽是依靠() 。 A)對象的繼承B)對象的多態(tài) C)對象的封裝D)對象的分類 參考答案: C 二、填空題(本大題共5小題,每小題 2
5、分,共 10分)不寫解答過程,將正確的答案 寫在每小題的空格內(nèi)。錯(cuò)填或不填均無分。 1含有純虛函數(shù)的類稱為()。 參考答案:抽象類 2若將一個(gè)二元運(yùn)算符重載為類的成員函數(shù),其形參個(gè)數(shù)應(yīng)該是()個(gè)。 參考答案: 1 3一個(gè)全局函數(shù)應(yīng)聲明為類的()函數(shù)才能訪問這個(gè)類的 private 成員。 參考答案:友元 4重載運(yùn)算符“ ”的函數(shù)名為()。 參考答案: operator 5定義模板的關(guān)鍵字為 ()。 參考答案: template 三、程序分析題(本大題共6 小題,每小題 5分,共 30分)給出下面各程序的輸出結(jié) 果。 1閱讀下面程序,寫出輸出結(jié)果。 #include using namespac
6、e std。 class CTest private: / 編譯預(yù)處理命令 / 使用命名空間 std int n 。 / 數(shù)據(jù)成員 public: CTest(int i = 16): n(i)/ 構(gòu)造函數(shù) int Get() return n 。 / 返回 n 。 int main() CTest a。 / 主函數(shù) main() / 定義對象 a const CTest b(8) 。 / 定義對象 b cout a.Get() , b.Get() endl 。 / 輸出信息 return 0 。 / 返回值 0, 返回操作系統(tǒng) 上面程序的輸出結(jié)果為: 參考答案: 16,6 2閱讀下面程序,寫
7、出輸出結(jié)果。 #include / 編譯預(yù)處理命令 using namespace std。/ 使用命名空間 std class A public: A() cout A endl 。 / 構(gòu)造函數(shù) A() cout A endl 。 / 析構(gòu)函數(shù) 。 class B private: A a 。/ 數(shù)據(jù)成員 public: B() cout B endl 。 / 構(gòu)造函數(shù) B() cout B endl 。 / 析構(gòu)函數(shù) 。 int main(void)/ 主函數(shù) main() B obj 。/ 定義對象 return 0 。 / 返回值 0, 返回操作系統(tǒng) 參考答案: A B B A 3閱
8、讀下面程序,寫出輸出結(jié)果。 #include / 編譯預(yù)處理命令 using namespace std。/ 使用命名空間 std template T Max(const T &a, const T &b) return a b ? b : a 。 int main() / 主函數(shù) main() cout Max(1.8, 5.18) endl Max(1.8, 5.18) endl 。 / 輸出信息 return 0 。 / 返回值 0, 返回操作系統(tǒng) 上面程序的輸出結(jié)果為: 參考答案: 5.18 4閱讀下面程序,寫出輸出結(jié)果。 #include using namespace std。
9、namespace ns int x = 10 。 int y = 100 。 namespace int x = 20 。 5 / 預(yù)處理命令 / 使用標(biāo)準(zhǔn)命名空間 std / 命名空間 ns / 命名空間 ns 中的變量 x / 命名空間 ns 中的變量 y / 無名命名空間 / 命名空間中的變量 x int y = 300 。 / 全局變量 y int main(void) cout x ns:x endl 。 cout ns:y y endl 。 / 主函數(shù) main(void) / 顯示變量 x 的值 / 顯示變量 y 的值 return 0 。/ 返回值 0, 返回操作系統(tǒng) 上面程
10、序的輸出結(jié)果為: 參考答案: 20 10 100 300 5閱讀下面程序,寫出輸出結(jié)果。 #include / 預(yù)處理命令 using namespace std。/ 使用標(biāo)準(zhǔn)命名空間 std / 基類 class Base public: / 公有函數(shù) : virtual void Show() const cout Base:Show() endl 。 / 虛函數(shù) 。 / 派生類 class Derived: public Base public: / 公有函數(shù) : void Show() const cout Derived:Show() endl 。 / 虛函數(shù) 。 void Refe
11、rs(const Base &obj)/ 基類引用 obj.Show() 。/ 調(diào)用函數(shù) Show() int main()/ 主函數(shù) main() / 定義對象 Base obj1。 Derived obj2 。 / 定義對象 Refers(obj1) 。 Refers(obj2) 。 return 0 。 上面程序的輸出結(jié)果為: 參考答案: / 調(diào)用函數(shù) Refers() / 調(diào)用函數(shù) Refers() / 返回值 0, 返回操作系統(tǒng) Base:Show() Derived:Show() 6閱讀下面程序,寫出輸出結(jié)果。 #include using namespace std。 class
12、 A protected: / 數(shù)據(jù)成員 : int a。 public: / 公有函數(shù) : A(int x): a(x) void Show() const cout a endl 。 class B protected: / 數(shù)據(jù)成員 : int b 。 / 預(yù)處理命令 / 使用標(biāo)準(zhǔn)命名空間 / 數(shù)據(jù)成員 / 構(gòu)造函數(shù) / 顯示 a 之值 / 數(shù)據(jù)成員 std public: / 公有函數(shù) : B(int x): b(x) / 構(gòu)造函數(shù) void Show() const cout b endl 。 / 顯示 a 與 b 之值 。 class C: public A, public B p
13、ublic: / 公有函數(shù) : C(int x, int y): A(x), B(y) void Show() const cout a , b endl 。 。 int main() C obj(5, 18) 。 obj.Show() 。 obj.A:Show() 。 obj.B:Show() 。 return 0 。/ 返回值 上面程序的輸出結(jié)果為: 參考答案: 5,18 5 18 / 構(gòu)造函數(shù) / 顯示 b 之值 / 主函數(shù) main() / 定義對象 / 顯示相關(guān)信息 / 顯示相關(guān)信息 / 顯示相關(guān)信息 0, 返回操作系統(tǒng) 四、程序填空題(本大題共 4 小題,每小題 3 分,共 12
14、分) / 預(yù)處理命令 / 使用標(biāo)準(zhǔn)命名空間 std / 對象數(shù) 1將如下程序補(bǔ)充完整。 #include using namespace std。 / 測試靜態(tài)成員類 class Test private: / 數(shù)據(jù)成員 : static int count 。 public: / 公有函數(shù) : Test() count+ 。 / 構(gòu)造函數(shù) , 實(shí)現(xiàn)對對象進(jìn) 行計(jì)數(shù) static void Show() cout 共有 count 個(gè)對象 ! endl 。 / 顯示對象數(shù) 。 int main() Test obj1, obj2, obj3 。 Test:Show() 。 / 主函數(shù) main
15、() / 定義對象 return 0 。 參考答案: int Test:count = / 返回值 0,返回操作系統(tǒng) 2下列程序的輸出結(jié)果為“ B ”,試將程序補(bǔ)充完整。 #include / 編譯預(yù)處理命令 using namespace std。/ 使用命名空間 std class A public: void Show() const cout A endl 。 。 class B: public A public: void Show() const cout B Show() 。 delete p。 / 輸出信息 / 主函數(shù) main() / 定義指針 / 輸出信息 / 釋放空間 r
16、eturn 0 。 參考答案: virtual / 返回值 0, 返回操作系統(tǒng) 3將如下程序補(bǔ)充完整。 #include using namespace std。 / 預(yù)處理命令 / 使用標(biāo)準(zhǔn)命名空間 std / 顯示對象數(shù) / 基類 class Base private: / 數(shù)據(jù)成員 : int m 。 / 數(shù)據(jù)成員 public: / 公有函數(shù) : Base(int a): m(a) / 構(gòu)造函數(shù) virtual void Show() const cout m endl 。 / 虛函數(shù) 。 / 派生類 class Derived: public Base private: / 數(shù)據(jù)成員
17、 : / 數(shù)據(jù)成員 int n 。 public: / 公有函數(shù) : Derived(int a, int b): Base(a), n(a) void Show() const cout n Show() 。 / 構(gòu)造函數(shù) / 虛函數(shù) / 顯示 n 及 , / 主函數(shù) main() / 定義派生類對象 / 定義基類指針 / 調(diào)用 Show() return 0 。 / 返回值 0, 返回操作系統(tǒng) 參考答案: Base: 4將如下程序補(bǔ)充完整。 / 預(yù)處理命令 #include using namespace std。 / 使用標(biāo)準(zhǔn)命名空間 std / 整型類 class Int privat
18、e: / 數(shù)據(jù)成員 / 數(shù)據(jù)成員 : int i 。 public: / 公有函數(shù) : Int(int x = 0): i(x) / 構(gòu)造函數(shù) ,將基本類型 int 轉(zhuǎn)換為整型類 Int () return i 。 / 類類型轉(zhuǎn)換函數(shù) , 將類 Int 轉(zhuǎn)換為基本類型 int 。 int main() Int a 。 cout a endl 。 / 主函數(shù) main() / 定義整型對象 / 顯示 a return 0 。 參考答案: operator int / 返回值 0, 返回操作系統(tǒng) 五、編程題(本大題共 2小題,第 1小題 12分,第 2小題 16分,共 28 分) 1試使用函數(shù)模板
19、實(shí)現(xiàn)求一個(gè)數(shù)組各元素的最小值,要求編寫測試程序。 / 求數(shù)組 a 各元素的最小值 函數(shù)模板聲明如下: template Type Min(Type a, int n) 參考程序: #include using namespace std。 template Type Min(Type a, int n) Type m = a0 。 求的最小值 for (int i = 1 。 i n 。 i+) / 編譯預(yù)處理命令 / 使用命名空間 std / 求數(shù)組 a 各元素的最小值 / 用 m 表示當(dāng)前所 / 比較求出當(dāng)前的最小值 / 返回最小 if (ai m) m = ai 。 return m 。
20、 值 int main() main() int a = 1, 2, 3, 4, 5, 6, 7, 8, 9 。 cout Min(a, 9) endl 。 return 0 。 / 主 函 數(shù) / 定義數(shù)組 / 輸出各元素的最小值 / 返回值 , 返回操作系統(tǒng) 2定義復(fù)數(shù)類 Complex ,并重載加法運(yùn)算符“ +”、重載輸出運(yùn)算符“ ”,要求編寫測試程序。 參考程序: #include using namespace std。 / 聲明復(fù)數(shù)數(shù) class Complex private: / 數(shù)據(jù)成員 double real。 double image 。 / 編譯預(yù)處理命令 / 使用命名
21、空間 std / 實(shí)部 / 虛部 public: / 公有函數(shù) Complex(double r = 0, double i = 0): real(r), image(i) double GetReal() const return real 。 / 返回實(shí)部 double GetImage() const return image 。 / 返回虛部 void SetReal(double r) real = r 。 / 設(shè)置實(shí)部 void SetImage(double i) image = i 。 / 設(shè)置虛部 。 / 構(gòu)造函數(shù) Complex operator+(const Complex &a, const Complex &b)/
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 保護(hù)鼻子健康教案反思
- 角形的邊說課稿
- 教師職業(yè)病健康知識講座
- 展覽合同終止合同協(xié)議范例
- 市政工程保溫板施工合同
- 消費(fèi)者權(quán)益爭議解決協(xié)議
- 房屋建筑施工合同審計(jì)
- 辦公樓廁所翻新合同樣本
- 家電企業(yè)會(huì)計(jì)人員聘用協(xié)議
- 酒店窗戶安裝施工協(xié)議
- 2023年福建省考評員考試題
- 開源軟件供應(yīng)鏈安全研究
- 三年級上冊數(shù)學(xué)教案-第7單元 分?jǐn)?shù)的初步認(rèn)識(一) 單元概述和課時(shí)安排 蘇教版
- 中國釔-90行業(yè)市場現(xiàn)狀分析及競爭格局與投資發(fā)展研究報(bào)告2024-2029版
- 腫瘤血小板低的護(hù)理措施
- 文物修復(fù)保護(hù)方案
- 課桌舞表演總結(jié)語
- 中國石油天然氣集團(tuán)公司安全監(jiān)督管理辦法
- 教師專業(yè)學(xué)習(xí)共同體研究
- 心理健康擁抱幸福人生
- 兒童早期發(fā)展項(xiàng)目和評價(jià)課件
評論
0/150
提交評論