《C語(yǔ)言程序設(shè)計(jì)》作業(yè)題.doc

上傳人:小** 文檔編號(hào):16762976 上傳時(shí)間:2020-10-23 格式:DOC 頁(yè)數(shù):36 大小:165.50KB
收藏 版權(quán)申訴 舉報(bào) 下載
《C語(yǔ)言程序設(shè)計(jì)》作業(yè)題.doc_第1頁(yè)
第1頁(yè) / 共36頁(yè)
《C語(yǔ)言程序設(shè)計(jì)》作業(yè)題.doc_第2頁(yè)
第2頁(yè) / 共36頁(yè)
《C語(yǔ)言程序設(shè)計(jì)》作業(yè)題.doc_第3頁(yè)
第3頁(yè) / 共36頁(yè)

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

5 積分

下載資源

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

資源描述:

《《C語(yǔ)言程序設(shè)計(jì)》作業(yè)題.doc》由會(huì)員分享,可在線(xiàn)閱讀,更多相關(guān)《《C語(yǔ)言程序設(shè)計(jì)》作業(yè)題.doc(36頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、《C++語(yǔ)言程序設(shè)計(jì)》作業(yè)題 一、判斷題 ( )1、寫(xiě)在類(lèi)體內(nèi)的函數(shù)都是內(nèi)聯(lián)函數(shù)。 ( )2、通常的拷貝初始化構(gòu)造函數(shù)的參數(shù)是某個(gè)對(duì)象的指針名。 ( )3、重載運(yùn)算符可改變?cè)\(yùn)算符的優(yōu)先級(jí)和結(jié)合性。 ( )4、在設(shè)置了默認(rèn)參數(shù)值后,調(diào)用函數(shù)的對(duì)應(yīng)實(shí)參就必須省略。 ( )5、析構(gòu)函數(shù)是一種函數(shù)體為空的成員函數(shù)。 ( )6、某類(lèi)的友元類(lèi)的所有成員函數(shù)可以存取或修改該類(lèi)中的私有成員。 ( )7、對(duì)象數(shù)組的元素可以是不同類(lèi)的對(duì)象。 ( )8、函數(shù)的參數(shù)個(gè)數(shù)、類(lèi)型及位置都相同,只是函數(shù)返回值類(lèi)型不同,這不是重載函數(shù)。

2、 ( )9、派生類(lèi)是從基類(lèi)派生出來(lái)的,但它不能再生成新的派生類(lèi)。 ( )10、構(gòu)造函數(shù)和析構(gòu)函數(shù)都不能重載。 ( )11、在公有繼承中,基類(lèi)中只有公有成員對(duì)派生類(lèi)的對(duì)象是可見(jiàn)的。 ( )12、this指針是一個(gè)指向正在被某個(gè)成員函數(shù)操作的對(duì)象的指針。 ( )13、一維對(duì)象指針數(shù)組的每個(gè)元素應(yīng)該是某個(gè)類(lèi)的對(duì)象的地址值。 ( )14、在C++中,定義函數(shù)時(shí)必須給出函數(shù)的類(lèi)型。 ( )15、析構(gòu)函數(shù)是一種函數(shù)參數(shù)表為空的成員函數(shù)。 ( )16、派生類(lèi)的繼承方式有兩種:公有繼承和私有繼承。 ( )17、自身類(lèi)對(duì)象的引用不可以作

3、為該類(lèi)的成員。 ( )18、多重繼承情況下,派生類(lèi)中對(duì)基類(lèi)成員的訪(fǎng)問(wèn)不會(huì)出現(xiàn)二義性。 ( )19、可以在類(lèi)的構(gòu)造函數(shù)中對(duì)靜態(tài)數(shù)據(jù)成員進(jìn)行初始化。 ( )20、多重繼承情況下,派生類(lèi)的構(gòu)造函數(shù)的執(zhí)行順序取決于定義派生類(lèi)時(shí)所指定的各基類(lèi)的順序。         ( )21、在單繼承情況下,派生類(lèi)中對(duì)基類(lèi)成員的訪(fǎng)問(wèn)不會(huì)出現(xiàn)二義性。 ( )22、轉(zhuǎn)換函數(shù)不是成員函數(shù),它是用來(lái)進(jìn)行強(qiáng)制類(lèi)型轉(zhuǎn)換的。 ( )23、在公有繼承中,基類(lèi)中的保護(hù)成員對(duì)派生類(lèi)對(duì)象是可見(jiàn)的。 ( )24、虛基類(lèi)是用來(lái)解決多繼承中公共基類(lèi)在派生類(lèi)中只產(chǎn)生一個(gè)基類(lèi)子對(duì)象的問(wèn)

4、題。 ( )25、在保護(hù)繼承中,基類(lèi)中的公有成員對(duì)派生類(lèi)對(duì)象是可見(jiàn)的。 ( )26、抽象類(lèi)是指一些不能定義對(duì)象的類(lèi)。 ( )27、虛函數(shù)是用virtual關(guān)鍵字說(shuō)明的成員函數(shù)。 ( )28、動(dòng)態(tài)聯(lián)編是在運(yùn)行時(shí)選定所要調(diào)用的成員函數(shù)的。 ( )29、聲明派生類(lèi)時(shí),在派生類(lèi)的頭部都要明確列出其直接基類(lèi)和間接基類(lèi)。 ( )30、在C++中對(duì)于運(yùn)算符重載,只能重載已有的運(yùn)算符。 ( )31、在程序中可以直接調(diào)用構(gòu)造函數(shù)。 ( )32、解決多繼承情況下出現(xiàn)的二義性的方法之一是使用作用域運(yùn)算符。 ( )33、函數(shù)重載是一

5、種多態(tài)現(xiàn)象,它屬于動(dòng)態(tài)聯(lián)編。 ( )34、友元函數(shù)、友元類(lèi)的聲明可以放在類(lèi)定義中的任何地方。 ( )35、抽象類(lèi)是一些不能實(shí)例化的類(lèi),即不能定義對(duì)象的類(lèi)。 ( )36、const對(duì)象不能隨意被修改,但const成員函數(shù)可以修改const對(duì)象。 ( )37、拷貝初始化構(gòu)造函數(shù)的參數(shù)只能是對(duì)某個(gè)對(duì)象的引用。 ( )38、類(lèi)的公有靜態(tài)成員既可以用類(lèi)的對(duì)象訪(fǎng)問(wèn),也可以用作用域運(yùn)算符通過(guò)類(lèi)名訪(fǎng)問(wèn)。 ( )39、拷貝初始化構(gòu)造函數(shù)的參數(shù)可以是某類(lèi)的對(duì)象名。 ( )40、在類(lèi)體外定義的函數(shù)若沒(méi)有關(guān)健字inline說(shuō)明,則都是外聯(lián)函數(shù)。

6、 ( )41、C++中的所有函數(shù)調(diào)用都是傳引用調(diào)用。 ( )42、析構(gòu)函數(shù)說(shuō)明為虛函數(shù)是沒(méi)有意義的。 ( )43、派生類(lèi)的構(gòu)造函數(shù)的成員初始化列表中,可以包含基類(lèi)的子對(duì)象初始化。 ( )44、構(gòu)造函數(shù)說(shuō)明為虛函數(shù)是沒(méi)有意義的。 ( )45、對(duì)每個(gè)可重載的運(yùn)算符來(lái)說(shuō),它既可以重載為友元函數(shù),又可以重載為成員函數(shù),還可以重載為非成員函數(shù)。 ( )46、C++中的所有函數(shù)調(diào)用都是傳值調(diào)用。 ( )47、使用關(guān)鍵字class定義的類(lèi)中,缺省的訪(fǎng)問(wèn)權(quán)限是公有(public)的。 ( )48、使用關(guān)鍵字class定義的類(lèi)中,缺省的訪(fǎng)問(wèn)

7、權(quán)限是私有(private)的。 ( )49、如果一個(gè)成員函數(shù)只存取類(lèi)的靜態(tài)數(shù)據(jù)成員,則可將該成員函數(shù)說(shuō)明為靜態(tài)成員函數(shù)。 ( )50、說(shuō)明和定義類(lèi)的對(duì)象時(shí),類(lèi)名前面不需要加class關(guān)鍵字。 二、填空 1、如果一個(gè)函數(shù)沒(méi)有返回值,定義時(shí)需用類(lèi)型說(shuō)明符______說(shuō)明。 2、通常的拷貝初始化構(gòu)造函數(shù)的參數(shù)是___________。 3、對(duì)象成員的表示與結(jié)構(gòu)體成員的表示相同,使用運(yùn)算符____或____。 4、已知:p是一個(gè)指向類(lèi)A數(shù)據(jù)成員m的指針,a1是類(lèi)A的一個(gè)對(duì)象,如果要給對(duì)象a1的數(shù)據(jù)成員m賦值為5,應(yīng)____________賦值。 5、C++中

8、,繼承分為單繼承和_____,而繼承方式可分為_(kāi)____、______、______。 6、任何類(lèi)中允許有三種類(lèi)型的成員,它們分別是______、_______、_______。 7、________能夠用來(lái)訪(fǎng)問(wèn)當(dāng)前作用域內(nèi)與局部變量同名的全局變量。 8、在類(lèi)內(nèi)部定義的_____和_____成員不能被不屬于該類(lèi)的成員函數(shù)來(lái)存取,定義為_(kāi)_____的成員則可以在類(lèi)外部進(jìn)行存取。 9、靜態(tài)數(shù)據(jù)成員的賦初值是在________進(jìn)行。 10、C++的函數(shù)如果在返回類(lèi)型、參數(shù)類(lèi)型、參數(shù)個(gè)數(shù)、_______上有所不同,則認(rèn)為是不同的函數(shù)(注:對(duì)于同名函數(shù)而言)。 11、如果不能成功地分配所需要

9、的內(nèi)存時(shí),new返回____。 12、在編譯時(shí)將所用函數(shù)的代碼嵌入到主調(diào)函數(shù)中,這種函數(shù)稱(chēng)為_(kāi)_______。 13、如果靜態(tài)成員函數(shù)中要引用非靜態(tài)成員時(shí),可通過(guò)_____來(lái)引用。 14、當(dāng)使用delete運(yùn)算符釋放一個(gè)對(duì)象時(shí),delete會(huì)自動(dòng)調(diào)用_______。 15、從一個(gè)基類(lèi)派生的繼承為單繼承,從多個(gè)基類(lèi)派生的繼承為_(kāi)______。 16、多繼承下,可能造成對(duì)基類(lèi)中某個(gè)成員訪(fǎng)問(wèn)的________。 17、如果想要使公共基類(lèi)在派生類(lèi)中只產(chǎn)生一個(gè)基類(lèi)子對(duì)象,則必須將這個(gè)基類(lèi)設(shè)為_(kāi)_____。 18、面向?qū)ο蟪绦蛟O(shè)計(jì)的三大特征是封裝性、繼承性和________。 19、多態(tài)從

10、實(shí)現(xiàn)的角度來(lái)講可以劃分為兩類(lèi),編譯時(shí)的多態(tài)和_______。 20、將運(yùn)算符++重載為類(lèi)的友元函數(shù)時(shí),定義前置++有____個(gè)參數(shù),而定義后置++有___個(gè)參數(shù)。 21、抽象類(lèi)不能實(shí)例化,即不能定義一個(gè)抽象類(lèi)的_______。 22、關(guān)鍵字______、______、______ 和 _______在C++中用來(lái)建立新的數(shù)據(jù)類(lèi)型。 23、定義在類(lèi)內(nèi)部的函數(shù)為_(kāi)_______,編譯器會(huì)在調(diào)用該函數(shù)處,將函數(shù)代碼的拷貝在調(diào)用函數(shù)處展開(kāi)。 24、在類(lèi)定義時(shí)如果沒(méi)有定義構(gòu)造函數(shù),編譯系統(tǒng)會(huì)自動(dòng)生成一個(gè)_______。 25、類(lèi)的______成員只能被該類(lèi)的成員函數(shù)或友元訪(fǎng)問(wèn)。 26、使關(guān)

11、鍵字class定義的類(lèi)中缺省的訪(fǎng)問(wèn)權(quán)限是________。 27、一個(gè)類(lèi)中只可能定義_____個(gè)析構(gòu)函數(shù)。 28、當(dāng)一個(gè)類(lèi)的成員是另一個(gè)類(lèi)的對(duì)象時(shí),該對(duì)象稱(chēng)為_(kāi)______。 29、靜態(tài)數(shù)據(jù)成員在定義或說(shuō)明時(shí)前面要加上關(guān)鍵字_______。 30、C++程序必須包含頭文件_________后,才能使用輸入輸出流。 31、在說(shuō)明const變量時(shí),必須對(duì)該變量_______。 32、在需要基類(lèi)對(duì)象的任何地方都可以使用________的對(duì)象來(lái)代替。 33、帶有純虛函數(shù)的類(lèi)是________。 34、動(dòng)態(tài)聯(lián)編可以通過(guò)_____或引用所標(biāo)識(shí)的對(duì)象來(lái)操作虛函數(shù)。 35、_____限定符用

12、來(lái)聲明只讀變量。 36、公有成員函數(shù)的集合稱(chēng)為類(lèi)的_______。 37、重載不能改變運(yùn)算符的_________和_______。 38、運(yùn)算符______動(dòng)態(tài)分配一個(gè)對(duì)象。 39、_________能夠定義一個(gè)在不同數(shù)據(jù)類(lèi)型基礎(chǔ)上完成同一任務(wù)的函數(shù)。 40、每個(gè)對(duì)象都維護(hù)了一個(gè)指向自身的指針,這個(gè)指針?lè)Q為_(kāi)_____指針。 41、處于同一層次的各基類(lèi)構(gòu)造函數(shù)的執(zhí)行順序取決于________所指定的各基類(lèi)的順序。 42、_______是用來(lái)初始化類(lèi)的數(shù)據(jù)成員的一種特殊的成員函數(shù)。 43、受保護(hù)的成員不能被外界引用,但它可以被派生類(lèi)的________引用。 44、靜態(tài)聯(lián)編工作是

13、在________階段完成的。 45、在C++中,對(duì)虛函數(shù)來(lái)說(shuō),不能聲明_______,但可以聲明虛析構(gòu)函數(shù) 46、______成員函數(shù)的實(shí)現(xiàn)中不能直接引用類(lèi)中說(shuō)明的非靜態(tài)成員。 47、const char *p說(shuō)明了p是指向_______的指針。 48、通常,類(lèi)的成員函數(shù)的訪(fǎng)問(wèn)模式是________,數(shù)據(jù)成員的訪(fǎng)問(wèn)模式是_______。 49、當(dāng)用受保護(hù)的繼承從基類(lèi)派生一個(gè)類(lèi)時(shí),基類(lèi)的公有成員成為派生類(lèi)的______成員,基類(lèi)的受保護(hù)成員成為派生類(lèi)的_______成員。 50、如果一個(gè)類(lèi)包含一個(gè)或多個(gè)純虛函數(shù),則該類(lèi)為_(kāi)_______。 三、選擇題 1、下列有關(guān)類(lèi)的說(shuō)法不正確

14、的是________。 ① 類(lèi)是一種用戶(hù)自定義的數(shù)據(jù)類(lèi)型; ② 只有類(lèi)中的成員函數(shù)或友元函數(shù)才能存取類(lèi)中的私有成員; ③ 在類(lèi)中,如果不作特別說(shuō)明,所有的數(shù)據(jù)均為私有類(lèi)型; ④ 在類(lèi)中,如果不作特別說(shuō)明,所有的成員函數(shù)均為公有類(lèi)型; 2、局部變量可以隱藏全局變量,那么在有同名全局變量和局部變量的情形時(shí),可以用_______提供對(duì)全局變量的訪(fǎng)問(wèn)。 ① 作用域運(yùn)算符 ② 指針運(yùn)算符 ③ 提取運(yùn)算符 ④ 插入運(yùn)算符 3、類(lèi)模板的使用實(shí)際上是將類(lèi)模板實(shí)例化成一個(gè)具體的________。 ① 函數(shù)

15、 ② 對(duì)象 ③ 類(lèi) ④ 類(lèi)的成員 4、下列輸出字符‘d’的方法中,______是錯(cuò)誤的。 ① cout<

16、 ④ 變量A與a按位相與作為函數(shù)set( )的參數(shù); 6、派生類(lèi)的構(gòu)造函數(shù)的成員初始化列表中,不能包含_______。 ① 基類(lèi)的構(gòu)造函數(shù); ② 派生類(lèi)中子對(duì)象的初始化; ③ 基類(lèi)的子對(duì)象初始化; ④ 派生類(lèi)中一般數(shù)據(jù)成員的初始化; 7、關(guān)于引用,下列的說(shuō)法中錯(cuò)誤的是_______。 ① 引用是給被引用的變量取一個(gè)別名; ② 引用主要是用來(lái)作函數(shù)的形參和函數(shù)的返回值; ③ 在聲明引用時(shí),要給它另開(kāi)辟內(nèi)存單元; ④ 在聲明引用時(shí),必須同時(shí)使它初始化; 8、在下列說(shuō)法中,______不會(huì)調(diào)用拷貝初始化構(gòu)造函數(shù)。 ① 當(dāng)對(duì)象作為函數(shù)實(shí)參傳遞給函數(shù)形參時(shí); ② 明確表示由一

17、個(gè)對(duì)象初始化另一個(gè)對(duì)象時(shí); ③ 用賦值運(yùn)算符”=”將一個(gè)對(duì)象賦給另一個(gè)同類(lèi)對(duì)象時(shí); ④ 當(dāng)對(duì)象作為函數(shù)返回值時(shí); 9、_____是不可以作為某類(lèi)的成員的。 ① 自身類(lèi)對(duì)象的指針       ?、凇∽陨眍?lèi)的對(duì)象 ③ 自身類(lèi)對(duì)象的引用        ④ 另一個(gè)類(lèi)的對(duì)象 10、關(guān)于虛函數(shù)的描述中,_____是正確的。 ① 虛函數(shù)是一個(gè)static類(lèi)型的成員函數(shù); ② 虛函數(shù)是一個(gè)非成員函數(shù); ③ 基類(lèi)中說(shuō)明了虛函數(shù)后,派生類(lèi)中與其對(duì)應(yīng)的函數(shù)可不必說(shuō)明為虛函數(shù); ④ 派生類(lèi)的虛函數(shù)與基類(lèi)的同名虛函數(shù)應(yīng)具有不同的參數(shù)個(gè)數(shù)和類(lèi)型; 11、下列四項(xiàng)選擇中,______不是流類(lèi)的對(duì)象。

18、 ① cin ② cout ③ buff ④ cerr 12、下列關(guān)于const限定符的說(shuō)法中,錯(cuò)誤的是______。 ① const限定符是左結(jié)合的,即它修飾在它左邊的類(lèi)型; ② 在說(shuō)明const變量時(shí),必須對(duì)該變量進(jìn)行初始化; ③ 與宏定義符號(hào)常量的區(qū)別是,const將產(chǎn)生一個(gè)具有類(lèi)型的符號(hào); ④ const變量是常量變量,所以一個(gè)const變量可以被多次賦予不同的常量; 13、在下列的各類(lèi)函數(shù)中,______不是類(lèi)的成員函數(shù)。 ① 構(gòu)造函數(shù)           ?、凇∥鰳?gòu)函數(shù) ③ 友元函數(shù)           ?、?/p>

19、 拷貝初始化構(gòu)造函數(shù) 14、_____不是析構(gòu)函數(shù)的特征。 ① 一個(gè)類(lèi)中只能定義一個(gè)析構(gòu)函數(shù); ② 析構(gòu)函數(shù)名與類(lèi)名相同; ③ 析構(gòu)函數(shù)只是用來(lái)釋放對(duì)象,所以析構(gòu)函數(shù)是空函數(shù); ④ 析構(gòu)函數(shù)不指定數(shù)據(jù)類(lèi)型,并且也沒(méi)有參數(shù); 15、下述靜態(tài)數(shù)據(jù)成員的特性中,______是錯(cuò)誤的。 ① 說(shuō)明靜態(tài)數(shù)據(jù)成員時(shí)前面要加修飾符static; ② 靜態(tài)數(shù)據(jù)成員要在類(lèi)體外進(jìn)行初始化; ③ 在程序中引用公有靜態(tài)數(shù)據(jù)成員時(shí),要在靜態(tài)數(shù)據(jù)成員名前加<類(lèi)名>和作用域運(yùn)算符; ④ 靜態(tài)數(shù)據(jù)成員是個(gè)別對(duì)象所共用的; 16、具有轉(zhuǎn)換函數(shù)功能的構(gòu)造函數(shù),應(yīng)該是______。 ① 不帶參數(shù)的構(gòu)造函數(shù);

20、 ② 帶有一個(gè)參數(shù)的構(gòu)造函數(shù); ③ 帶有兩個(gè)以上參數(shù)的構(gòu)造函數(shù); ④ 缺省構(gòu)造函數(shù); 17、下列繼承方式中,_____種繼承方式是錯(cuò)的。 ① 公有繼承;          ?、凇∷接欣^承; ③ 完全繼承;           ④ 保護(hù)繼承; 18、下列對(duì)繼承關(guān)系的描述中,______是對(duì)的。 ① 在公有繼承中,基類(lèi)中的公有成員和私有成員在派生類(lèi)中都是可見(jiàn)的; ② 在公有繼承中,基類(lèi)中只有公有成員對(duì)派生類(lèi)的對(duì)象是可見(jiàn)的; ③ 在私有繼承中,基類(lèi)中只有公有成員對(duì)派生類(lèi)是可見(jiàn)的; ④ 在私有繼承中,基類(lèi)中的保護(hù)成員對(duì)派生類(lèi)的對(duì)象是可見(jiàn)的; 19、對(duì)定義重載函數(shù)的下列要求中,__

21、____是錯(cuò)誤的。 ① 要求參數(shù)的個(gè)數(shù)不同; ② 要求參數(shù)中至少有一個(gè)類(lèi)型不同; ③ 要求參數(shù)個(gè)數(shù)相同時(shí),參數(shù)類(lèi)型不同; ④ 參數(shù)個(gè)數(shù)和類(lèi)型相同時(shí),要求函數(shù)的返回值不同; 20、當(dāng)一個(gè)函數(shù)無(wú)返回值時(shí),定義它時(shí)函數(shù)的類(lèi)型應(yīng)是_______。 ① void ② 任意 ③ int ④ 無(wú) 21、重載函數(shù)在調(diào)用時(shí)選擇的依據(jù)中,錯(cuò)誤的是________。 ① 參數(shù)個(gè)數(shù)             ② 參數(shù)的類(lèi)型  ③ 參數(shù)的位置           ?、堋『瘮?shù)的返回值類(lèi)型 22、有關(guān)構(gòu)造函數(shù)的說(shuō)法不正確的是_______。 ① 構(gòu)造函數(shù)的

22、名字和類(lèi)的名字一樣; ② 構(gòu)造函數(shù)在說(shuō)明類(lèi)的對(duì)象時(shí)自動(dòng)執(zhí)行; ③ 構(gòu)造函數(shù)無(wú)任何函數(shù)類(lèi)型; ④ 構(gòu)造函數(shù)有且僅有一個(gè); 23、下列的____是函數(shù)的引用調(diào)用。 ① 形參是指針,實(shí)參是地址值; ② 形參是變量,實(shí)參是引用; ③ 形參是指針,實(shí)參是數(shù)組名; ④ 形參是引用,實(shí)參是變量; 24、在一個(gè)被調(diào)用函數(shù)中,關(guān)于return語(yǔ)句使用的描述,_____是錯(cuò)誤的。 ① 被調(diào)用函數(shù)中可以不用return語(yǔ)句; ② 被調(diào)用函數(shù)中可以使用多個(gè)return語(yǔ)句; ③ 被調(diào)用函數(shù)中,如果有返回值,就一定要有return語(yǔ)句; ④ 被調(diào)用函數(shù)中,一個(gè)return語(yǔ)句可返回多個(gè)值給調(diào)用

23、函數(shù); 25、在C++中,關(guān)于下列設(shè)置參數(shù)默認(rèn)值的描述中,______是正確的。 ① 不允許設(shè)置參數(shù)的默認(rèn)值; ② 設(shè)置參數(shù)默認(rèn)值只能在定義函數(shù)時(shí)設(shè)置; ③ 設(shè)置參數(shù)默認(rèn)值時(shí),應(yīng)該是先設(shè)置右邊的再設(shè)置左邊的; ④ 設(shè)置參數(shù)默認(rèn)值時(shí),應(yīng)該全部參數(shù)都設(shè)置; 26、關(guān)于new運(yùn)算符的下列描述中,______是錯(cuò)誤的。 ① 它可以用來(lái)動(dòng)態(tài)創(chuàng)建對(duì)象和對(duì)象數(shù)組; ② 使用它創(chuàng)建的對(duì)象和對(duì)象數(shù)組可以使用運(yùn)算符delete刪除; ③ 使用它創(chuàng)建對(duì)象時(shí)要調(diào)用構(gòu)造函數(shù); ④ 使用它創(chuàng)建對(duì)象數(shù)組時(shí)必須指定初始值; 27、運(yùn)算符*的功能是______。 ① 用來(lái)表示指向?qū)ο笾羔槍?duì)指向類(lèi)成員指針

24、的操作; ② 用來(lái)表示對(duì)象對(duì)指向類(lèi)成員指針的操作; ③ 用來(lái)表示指向?qū)ο笾羔槍?duì)類(lèi)成員的操作; ④ 用來(lái)表示對(duì)象對(duì)類(lèi)成員的操作; 28、在一個(gè)函數(shù)中,要求通過(guò)函數(shù)來(lái)實(shí)現(xiàn)一種不太復(fù)雜的功能,并且要求加快執(zhí)行速度,選用_____合適。 ① 內(nèi)聯(lián)函數(shù) ② 重載函數(shù) ③ 遞歸函數(shù) ④ 嵌套調(diào)用 29、采用函數(shù)重載的目的在于______。 ① 實(shí)現(xiàn)共享 ② 減少空間 ③ 提高速度 ④ 使用方

25、便,提高可讀性 30、下列函數(shù)中,_____不能重載。 ① 成員函數(shù)         ?、凇》浅蓡T函數(shù) ③ 析構(gòu)函數(shù)         ?、堋?gòu)造函數(shù) 31、在下列關(guān)鍵字中,用以說(shuō)明類(lèi)中公有成員的是_____。 ① public ② private ③ protected ④ friend 32、有關(guān)類(lèi)和對(duì)象的說(shuō)法下列不正確的有_______。 ① 對(duì)象是類(lèi)的一個(gè)實(shí)例; ② 任何一個(gè)對(duì)象只能屬于一個(gè)具體的類(lèi); ③ 一個(gè)類(lèi)只能有一個(gè)對(duì)象; ④ 類(lèi)與對(duì)象的關(guān)系和數(shù)據(jù)類(lèi)型與變量的關(guān)系相似; 33、在下列關(guān)于標(biāo)準(zhǔn)輸入流的描述中,正確的是______。

26、① 流提取運(yùn)算符不能自動(dòng)識(shí)別變量的類(lèi)型,所以要用輸入格式控制串; ② 變量和流提取運(yùn)算符一起使用時(shí),要象scanf函數(shù)那樣在變量前加上&; ③ cin與流提取運(yùn)算符”>>”一起,將從鍵盤(pán)輸入的數(shù)送到變量中保存起來(lái); ④ 使用標(biāo)準(zhǔn)輸入流,必須包含頭文件”stdlib.h”; 34、_____是構(gòu)造函數(shù)的特征。 ① 構(gòu)造函數(shù)的函數(shù)名與類(lèi)名不同; ② 一個(gè)類(lèi)中只能定義一個(gè)構(gòu)造函數(shù); ③ 構(gòu)造函數(shù)可以設(shè)置缺省參數(shù); ④ 構(gòu)造函數(shù)必須指定類(lèi)型說(shuō)明; 35、C++語(yǔ)言中規(guī)定函數(shù)的返回值的類(lèi)型是由_______。 ① return語(yǔ)句中的表達(dá)式類(lèi)型所決定; ② 調(diào)用該函數(shù)的主調(diào)用函

27、數(shù)類(lèi)型決定; ③ 調(diào)用該函數(shù)時(shí)系統(tǒng)臨時(shí)決定; ④ 在定義該函數(shù)時(shí)所指定的函數(shù)類(lèi)型所決定; 36、下列對(duì)派生類(lèi)的描述中,______是錯(cuò)的。 ① 一個(gè)派生類(lèi)可以作為另一個(gè)派生類(lèi)的基類(lèi); ② 派生類(lèi)中繼承的基類(lèi)成員的訪(fǎng)問(wèn)權(quán)限到派生類(lèi)保持不變; ③ 派生類(lèi)的成員除了它自己的成員外,還包含了它的基類(lèi)的成員; ④ 派生類(lèi)至少有一個(gè)基類(lèi); 37、帶有虛基類(lèi)的多層派生類(lèi)構(gòu)造函數(shù)的成員初始化列表中都要列出虛基類(lèi)的構(gòu)造函數(shù),這樣將對(duì)虛基類(lèi)的子對(duì)象初始化_____。 ① 與虛基類(lèi)下面的派生類(lèi)個(gè)數(shù)有關(guān); ?、凇《啻?; ③ 二次;             ?、堋∫淮?; 38、關(guān)于繼承中出現(xiàn)的二義

28、性的描述中,______是錯(cuò)的。 ① 一個(gè)派生類(lèi)的兩個(gè)基類(lèi)中都有某個(gè)同名成員,在派生類(lèi)中對(duì)這個(gè)成員的訪(fǎng)問(wèn)可能出現(xiàn)二義性; ② 解決二義性的最常用的方法是對(duì)成員名的限定法; ③ 在單繼承情況下,派生類(lèi)中對(duì)基類(lèi)成員的訪(fǎng)問(wèn)也會(huì)出現(xiàn)二義性; ④ 一個(gè)派生類(lèi)是從兩個(gè)基類(lèi)派生出來(lái)的,而這兩個(gè)基類(lèi)又有一個(gè)共同的基類(lèi),對(duì)該基類(lèi)成員進(jìn)行訪(fǎng)問(wèn)時(shí),也可能出現(xiàn)二義性; 39、已知f1( )是類(lèi)A的公有成員函數(shù),p是指向成員函數(shù)f1( )的指針,采用_____是正確的。 ① p=f1; ② p=A::f1; ③ p=A

29、::f1( ); ④ p=f1( ); 40、關(guān)于動(dòng)態(tài)聯(lián)編的下列描述中,______是錯(cuò)誤的。 ① 動(dòng)態(tài)聯(lián)編是以虛函數(shù)為基礎(chǔ)的; ② 動(dòng)態(tài)聯(lián)編是在運(yùn)行時(shí)確定所調(diào)用的函數(shù)代碼的; ③ 動(dòng)態(tài)聯(lián)編調(diào)用函數(shù)操作是用指向?qū)ο蟮闹羔樆驅(qū)ο笠茫? ④ 動(dòng)態(tài)聯(lián)編是在編譯時(shí)確定操作函數(shù)的; 41、下面是面向?qū)ο蟪绦蛟O(shè)計(jì)的特點(diǎn),而______不是的。 ① 多態(tài)性            ② 封裝性 ③ 隱藏性 ④ 繼承性 42、關(guān)于成員函數(shù)特征的下述描述中,_____是錯(cuò)誤的。 ① 成員函數(shù)一定是內(nèi)聯(lián)函數(shù)

30、; ② 成員函數(shù)可以重載; ③ 成員函數(shù)可以設(shè)置參數(shù)的缺省值; ④ 成員函數(shù)可以是靜態(tài)的。 43、關(guān)于delete運(yùn)算符的下列描述中,_____是錯(cuò)的。 ① 它必須用于new返回的指針; ② 它也適用于空指針; ③ 對(duì)一個(gè)指針可以使用多次該運(yùn)算符; ④ 指針名前只用一對(duì)方括號(hào),不管所刪除數(shù)組的維數(shù)。 44、設(shè)置虛基類(lèi)的目的是_____。 ① 簡(jiǎn)化程序;            ② 消除二義性; ③ 提高運(yùn)行效率;         ?、堋p少目標(biāo)代碼; 45、下列運(yùn)算符中,_____運(yùn)算符在C++中不能重載。 ① ?:   ② + 

31、 ③ new  ④ <= 46、下列關(guān)于運(yùn)算符重載的描述中,_____是正確的。 ① 運(yùn)算符重載可以改變運(yùn)算數(shù)的個(gè)數(shù); ② 運(yùn)算符重載可以改變優(yōu)先級(jí); ③ 運(yùn)算符重載可以改變結(jié)合性; ④ 運(yùn)算符重載不可以改變語(yǔ)法結(jié)構(gòu); 47、如果一個(gè)類(lèi)至少有一個(gè)純虛函數(shù),那么就稱(chēng)該類(lèi)為_(kāi)____。 ① 抽象類(lèi)           ?、凇√摶?lèi) ③ 派生類(lèi)            ④ 以上都不對(duì) 48、對(duì)基類(lèi)和派生類(lèi)的關(guān)系描述中,_____是錯(cuò)誤的。 ① 派生類(lèi)是基類(lèi)的具體化; ② 派生類(lèi)是基類(lèi)的子集; ③ 派生類(lèi)是基類(lèi)定義的延續(xù); ④ 派生類(lèi)是基類(lèi)的組合; 4

32、9、已知:print( )函數(shù)是一個(gè)類(lèi)的常成員函數(shù),它無(wú)返回值,下列表示中,____是正確的。 ① void print( ) const ② const void print( ) ③ void const print( ) ④ void print(const) 50、派生類(lèi)的對(duì)象對(duì)它的基類(lèi)成員中,_____是可以訪(fǎng)問(wèn)的。 ① 公有繼承的公有成員;     ② 公有繼承的私有成員; ③ 公有繼承的保護(hù)成員;    ?、?私有繼承的公有成員。 四、簡(jiǎn)答題 1、 什么叫做靜態(tài)成員函數(shù)?它有何特點(diǎn)?

33、 2、在繼承體制中,試分析基類(lèi)中某成員函數(shù)是虛函數(shù)與不是虛函數(shù)有何不同?      3、試解釋純虛函數(shù)與函數(shù)體為空的虛函數(shù)的相似及不同之處。 4、為什么說(shuō)C++中的運(yùn)算符<<和>>是重載的運(yùn)算符? 5、什么是動(dòng)態(tài)聯(lián)編?在什么情況下可以實(shí)現(xiàn)動(dòng)態(tài)聯(lián)編? 6、拷貝初始化構(gòu)造函數(shù)是一特殊的成員函數(shù),在什么情況下系統(tǒng)會(huì)自動(dòng)調(diào)用它? 7、多繼承下,可能造成對(duì)基類(lèi)中某個(gè)成員訪(fǎng)問(wèn)的不唯一性,稱(chēng)為對(duì)基類(lèi)成員訪(fǎng)問(wèn)的二義性問(wèn)題。試舉例說(shuō)明,多繼承時(shí),在什么情況下會(huì)產(chǎn)生二義性?

34、8、如果在類(lèi)模板的定義中有一個(gè)靜態(tài)數(shù)據(jù)成員,則在程序運(yùn)行中會(huì)產(chǎn)生多少個(gè)相應(yīng)的靜態(tài)變量? 9、派生類(lèi)的對(duì)象可以賦給基類(lèi)對(duì)象,反過(guò)來(lái)行嗎?為什么? 10、構(gòu)造函數(shù)可以是虛函數(shù)嗎?試說(shuō)明。 五、寫(xiě)出下列程序的運(yùn)行結(jié)果 1、 #include "iostream.h" class A { public: A(int i=0) { m=i; cout<<"Constructor called."<

35、t(int i) { m=i; } void print( ) const { cout<

36、lled. 2、 #include "iostream.h" class A { public: A( ) { a=0; b=0; cout<<"Default constructor called."<

39、 B( ) { } B(int i,int j) { a=i, b=j; } void printb( ); private: int a,b; }; class A { public: A( ) { } A(int i, int j):c(i,j) { } void printa( ); private: B c; }

40、; void B::printb( ) { cout<<"a="<

41、e: int x, y; }; int fun(A &a) { a.x=a.x*a.y; return a.x; } void main( ) { A ob1(4,7),ob2(5,9); cout<

42、b=j; } void move(int i, int j) { a+=i; b+=j; } void disp( ) { cout<<"("<

43、"<

44、lass A { public: void seta(int x) { a=x; } void showa( ) { cout<

45、blic B { public: void setc(int x, int y, int z) { c=z; seta(x); setb(y); } void showc( ) { showa( ); showb( ); cout<

46、 c.setc(1,2,3); c.showc( ); }    Ans:1 2 3 7、 #include “iostream.h”               class J    { public: J(int i, int j) { a=i*j;

47、 display( ); }    virtual void display( ) { cout<<”J::display( ) called.”<< a<

48、 class P1: public J { public: P1(int i, int j): J(i, j) { p=i+j; display( ) ; } void display( ) { cout<<”P(pán)1::display( )

49、called.”<

50、ed.b P1::display( ) called.21 Press any key to continue 8、 #include “iostream.h”   class number { public: number( ) { count++; } ~number( ) { count- -; } static int HMS( ) { return count; } private: static

51、 int count; }; int number::count=20; void main( ) { number a1, a2, a3,a4; cout< class A { int a,b;

52、public : A() { a=b=0; } A(int aa,int bb) { a=aa; b=bb; cout < class FOO{ public: FOO(int i){ cout<<"Constructing.\n"; pointer=new int; *pointer=i; } FOO(const FOO& othe

53、r){ cout<<"Copy Constructing.\n"; pointer=new int; *pointer=*other.pointer; } ~FOO(){ cout<<"Destructing\n"; delete pointer; } int get(){ return *pointer; } private: int *pointer; }; void display(FOO obj){ cout<

54、obj1(15); FOO obj2=obj1; display(obj2); } Constructing. Copy Constructing. Copy Constructing. 15 Destructing Destructing Destructing 11\ #include class A { public: int n; }; class B:public A{}; class C:public A{}; class D:public B,public C { int getn(){re

55、turn B::n;} }; void main() { D d; d.B::n=10; d.C::n=20; cout< class A { private: static int n; int X; public: A(int x=0) { X=x; n++; } ~A() { n-- ; } static int GetNum(){ return n; } void print(); };

56、 void A::print() { cout << "n=" << n << ", X=" << X<< endl; } int A::n = 0; void main() { A *p=new A(12); p->print(); A a(34); a.print(); delete p; cout << "n=" << A::GetNum() << endl; } n=1, X=12 n=2, X=34 n=1 Press any key to continue 13、 #include class Sample{ p

57、rivate: int i; static int count; public: Sample( ); void display( ); }; Sample::Sample( ) { i=0; count++; } void Sample::display( ) { cout<<"i="<

58、 i=0,count=2 Press any key to continue 14\寫(xiě)出下面程序的輸出結(jié)果。 #include class Base1 { public: virtual void display() const; }; void Base1::display() const { cout << "Base1::display()" << endl; } class Base2: public Base1 { public: void display() const; }; void Base2::disp

59、lay() const { cout << "Base2::display()" << endl; } class Derived: public Base2 { public: void display() const; }; void Derived::display() const { cout << "Derived::display()" << endl; } void fun(Base1 *ptr) { ptr->display(); } void main() { Base1 base1; Base2 base2; Deriv

60、ed derived; fun(&base1); fun(&base2); fun(&derived); } 運(yùn)行結(jié)果: Base1::display() Base2::display() Derived::display() 15.用一句話(huà)概括下面程序的功能,并在”//”后加上注釋。 #include"iostream.h" #include"fstream.h" void main() { char ch; ifstream myin("file_from"); if(!myin) // ①

61、 cout<<"cannot open file: file_from"; ofstream myout("file_to"); if(!myout) cout<<"cannot open file: file_to"; while(myin.get(ch)) myout.put(ch); // ② myin.close(); myout.close(); } 功能:______________________________________________________ 功能是:將文件file_from的

62、內(nèi)容復(fù)制到文件file_to中。(3分) 注釋①: 判斷是否可以打開(kāi)文件,myin=0為不可以,myin=1為可以。(1分) 注釋②:向文件讀、寫(xiě)數(shù)據(jù)。(1分) 16\ class Base { public: virtual void fn(int x) { cout<<"In Base class,int x="<

63、nt f="<

64、b): In Base class,int x=5 Calling test(s): In SubClass,int f=5 Press any key to continue 六、簡(jiǎn)答題 1什么叫函數(shù)重載?重載的函數(shù)要滿(mǎn)足什么條件??jī)H函數(shù)的返回值類(lèi)型不同可以進(jìn)行函數(shù)重載嗎? 2簡(jiǎn)述面向?qū)ο蠹夹g(shù)的四個(gè)基本特征。 3簡(jiǎn)述面向?qū)ο蠹夹g(shù)支持的四種多態(tài)性。 4試解釋純虛函數(shù)與函數(shù)體為空的虛函數(shù)的相似及不同之處。 5.若派生類(lèi)與其基類(lèi)中有同名成員,試圖通過(guò)派生類(lèi)對(duì)象訪(fǎng)問(wèn)該同名成員時(shí),可訪(fǎng)問(wèn)到的是派生類(lèi)中的還是基類(lèi)中的成員?跟據(jù)上述理解,分析下面的類(lèi)體系。   

65、  Class A{     Public: int i;     Void f(float);     };     class B: public A{     public: int i;     void f(int);     };     則下面的訪(fǎng)問(wèn)是否具有二義性(b為類(lèi)B的一個(gè)對(duì)象)?     b.i;     b.f(3.5); 6 多繼承下,可能造成對(duì)基類(lèi)中某個(gè)成員訪(fǎng)問(wèn)的不唯一性,稱(chēng)為對(duì)基類(lèi)成員訪(fǎng)問(wèn)的二義性問(wèn)題。試舉例說(shuō)明,多繼承時(shí),在什么情況下會(huì)產(chǎn)生二義性? 7簡(jiǎn)述賦值兼容規(guī)則。 8什么是動(dòng)態(tài)聯(lián)

66、編?在什么情況下可以實(shí)現(xiàn)動(dòng)態(tài)聯(lián)編? 9 三種派生類(lèi)繼承方式有什么不同?各用在什么情況下? 10什么叫基類(lèi)?什么叫派生類(lèi)?基類(lèi)中保護(hù)成員的訪(fǎng)問(wèn)權(quán)限是什么? 11什么叫參數(shù)多態(tài)性?什么叫模板?模板方法是怎樣解決參數(shù)多態(tài)性問(wèn)題的? 12 解釋函數(shù)模板和模板函數(shù)。 13 解釋類(lèi)模板和模板類(lèi)。其中,哪個(gè)可以用來(lái)定義對(duì)象? 14 解釋模板形參、模板實(shí)參和參數(shù)實(shí)例化。 15 什么叫流?什么叫流類(lèi)? 數(shù)據(jù)從源對(duì)象到目的對(duì)象的傳送可以抽象看作為一個(gè)流。 流是抽象的概念,其職責(zé)是在數(shù)據(jù)的產(chǎn)生者和數(shù)據(jù)的使用者之間建立聯(lián)系,并負(fù)責(zé)管理數(shù)據(jù)的流動(dòng)。 描述流的類(lèi)稱(chēng)為流類(lèi)。 16 什么叫操作符?操作符有什么功能?怎樣使用操作符? 17寫(xiě)出文件操作的基本步驟。 1)打開(kāi)文件 2)對(duì)文件進(jìn)行操作 3)關(guān)閉文件 七、編程 1、 編寫(xiě)重載函數(shù)max1可分別求取兩個(gè)整數(shù)、三個(gè)整數(shù)、兩個(gè)雙精度數(shù)、三個(gè)雙精度數(shù)的最大值(數(shù)值自定)。 2、 使用函數(shù)重載的方法定義兩個(gè)重名函數(shù),分別求出整數(shù)型的兩點(diǎn)間距離和浮點(diǎn)

展開(kāi)閱讀全文
溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

相關(guān)資源

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

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

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


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

<var id="niadj"></var>
<button id="niadj"><dd id="niadj"><optgroup id="niadj"></optgroup></dd></button>
<fieldset id="niadj"></fieldset>
<menu id="niadj"><table id="niadj"><tr id="niadj"></tr></table></menu>
<tfoot id="niadj"><thead id="niadj"></thead></tfoot>
<tt id="niadj"></tt>