版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
第17頁/共NUMPAGES\*ARABIC17頁江南大學網(wǎng)絡教育第一階段練習題答案,答案在最后一頁。考試科目:《面向?qū)ο蟮某绦蛟O計》第章至第章(總分100分)__________學習中心(教學點)批次:層次:專業(yè):學號:身份證號:姓名:得分:一單選題(共9題,總分值9分,下列選項中有且僅有一個選項符合題目要求,請在答題卡上正確填涂。)1.友元類的聲明方法是()。(1分)A.friendclass<類名>;B.youyuanclass<類名>;C.classfriend<類名>;D.friendsclass<類名>;2.在類定義的外部,可以被任意函數(shù)訪問的成員有()。(1分)A.所有類成員B.private或protected的類成員C.public的類成員D.public或private的類成員3.在面向?qū)ο蟪绦蛟O計中,類通過()與外界發(fā)生關系。(1分)A.對象B.類C.消息D.接口4.下面選項中,()不是類的成員函數(shù)。(1分)A.構造函數(shù)B.析構函數(shù)C.友元函數(shù)D.拷貝構造函數(shù)5.對new運算符的下列描述中,()是錯誤的。(1分)A.它可以動態(tài)創(chuàng)建對象和對象數(shù)組B.用它創(chuàng)建對象數(shù)組時必須指定初始值C.用它創(chuàng)建對象時要調(diào)用構造函數(shù)D.用它創(chuàng)建的對象數(shù)組可以使用運算符delete來一次釋放6.關于C++與C語言的關系的描述中,()是錯誤的。(1分)A.C語言是C++的一個子集B.C語言與C++是兼容的C.C++對C語言進行了一些改進D.C++和C語言都是面向?qū)ο蟮?.面向?qū)ο蟪绦蛟O計著重于()的設計。(1分)A.對象B.類C.算法D.數(shù)據(jù)8.關于this指針的說法正確的是()。(1分)A.this指針必須顯式說明B.當創(chuàng)建一個對象后,this指針就指向該對象C.成員函數(shù)擁有this指針D.靜態(tài)成員函數(shù)擁有this指針。9.在整型指針變量p2、p3的定義中,錯誤的是()(1分)A.intp1,*p2,p3;B.int*p2,p1,*p3;C.intp1,*p2=&p1,*p3;D.int*p2,p1,*p3=&p1;二多選題(共2題,總分值2分,下列選項中至少有2個或2個以上選項符合題目要求,請在答題卡上正確填涂。)10.下面對析構函數(shù)的正確描述是()。(1分)A.系統(tǒng)可以提供默認的析構函數(shù)B.析構函數(shù)必須由用戶定義C.析構函數(shù)沒有參數(shù)D.析構函數(shù)可以設置默認參數(shù)11.下面說法正確的是()。(1分)A.對象是計算機內(nèi)存中的一塊區(qū)域,它可以存放代碼和數(shù)據(jù)B.對象實際是功能相對獨立的一段程序C.各個對象間的數(shù)據(jù)可以共享是對象的一大優(yōu)點D.在面向?qū)ο蟮某绦蛑?,對象之間只能通過消息相互通信三判斷題(共8題,總分值8分正確的填涂“A”,錯誤的填涂“B”。)12.C++程序中,不得使用沒有定義或說明的變量。(1分)(
)13.函數(shù)可設置默認參數(shù),但不允許將一個函數(shù)的所有參數(shù)都設置為默認參數(shù)。(1分)(
)14.函數(shù)可以沒有參數(shù),也可以沒有返回值。(1分)(
)15.面向?qū)ο蟪绦蛟O計中的消息應該包含“如何做”的信息。(1分)(
)16.引用被創(chuàng)建時可以用任意變量進行初始化。(1分)(
)17.類的設計和類的繼承機制實現(xiàn)了軟件模塊的可重用性。(1分)(
)18.在高級程序設計語言中,一般用類來實現(xiàn)對象,類是具有相同屬性和行為的一組對象的集合,它是創(chuàng)建對象的模板。(1分)(
)19.學習C++語言是學習面向?qū)ο蟮某绦蛟O計方法的唯一途徑。(1分)(
)四名詞解釋題(共4題,總分值12分)20.引用(3分)21.消息(3分)22.封裝(3分)23.重載函數(shù)(3分)五填空題(共13題,總分值13分)24.C++程序的內(nèi)存格局通常分為4個區(qū):_________________、_________________、_________________和_________________。(1分)25.目前有_________________和_________________兩種重要的程序設計方法。(1分)26.對于任意一個類,析構函數(shù)的個數(shù)最多為_________________個。(1分)27.C++有_________________和_________________兩種參數(shù)傳遞機制。(1分)28.使用C++風格的輸入輸出,在程序中必須包含頭文件“_________________”。(1分)29.在結(jié)構化程序設計方法中,程序可表示為_________________;而面向?qū)ο蟮某绦蛟O計方法,程序可表示為_________________。(1分)30.靜態(tài)數(shù)據(jù)成員和靜態(tài)成員函數(shù)可由_________________的函數(shù)訪問。(1分)31._________________是預定義的標準輸出流對象,_________________是輸出操作符,也稱插入運算符。(1分)32.面向?qū)ο蟪绦蛟O計方法具有_________________、_________________、_________________和_________________等特點。(1分)33.創(chuàng)建一個類的對象時,系統(tǒng)自動調(diào)用_________________;撤銷對象時,系統(tǒng)自動調(diào)用_________________。(1分)34.在程序運行時,通過為對象分配內(nèi)存來創(chuàng)建對象。在創(chuàng)建對象時,使用類作為_________________,故稱對象為類的_________________。(1分)35.設MClass是一個類,dd是它的一個對象,pp是指向dd的指針,cc是dd的引用,則對成員的訪問,對象dd可以通過_________________進行,指針pp可以通過_________________進行,引用cc可以通過_________________進行。(1分)36.友元的正確使用能提高程序的_________________,但破壞了類的封裝性和數(shù)據(jù)的隱蔽性。(1分)六簡答題(共8題,總分值31分)37.類的實例化是指創(chuàng)建類的對象還是定義類?(3分)38.函數(shù)原型中的參數(shù)名與函數(shù)定義中的參數(shù)名以及函數(shù)調(diào)用中的參數(shù)名必須一致嗎?(4分)39.什么叫做拷貝構造函數(shù)?拷貝構造函數(shù)何時被調(diào)用?(4分)40.什么是結(jié)構化程序設計方法?它有哪些優(yōu)點和缺點?(4分)41.比較值調(diào)用和引用調(diào)用的相同點與不同點。(4分)42.結(jié)構化程序設計方法與面向?qū)ο蟪绦蛟O計方法在對待數(shù)據(jù)結(jié)構和算法關系上有什么不同?(4分)43.名字空間的用途是什么?(4分)44.類與對象有什么關系?(4分)七綜合題(共5題,總分值25分)45.將例3.10中的Whole類如下修改,其他部分不變,寫出輸出結(jié)果。classWhole{public:Whole(inti);//Whole的有參構造函數(shù)Whole(){};//Whole的無參構造函數(shù)~Whole();//Whole的析構函數(shù)private:Partp1;//子對象1Partp2;//子對象2Partp3;//子對象3};Whole::Whole(inti):p2(i),p1(){cout<<"ConstructorofWhole"<<endl;}Whole∷~Whole(){cout<<"DestructorofWhole"<<endl;}(5分)46.#include<iostream>usingnamespacestd;classTest{private:intnum;public:Test();//默認構造函數(shù)Test(intn);//帶一個參數(shù)構造函數(shù)};Test∷Test(){cout<<"Initdefa"<<endl;num=0;}Test∷Test(intn){cout<<"Init"<<""<<n<<endl;num=n;}intmain(){Testx[2];//語句1Testy(15);//語句2return0;}(5分)47.#include<iostream>usingnamespacestd;intmain(){intnum=50;int&ref=num;ref=ref+10;cout<<"num="<<num<<endl;num=num+40;cout<<"ref="<<ref<<endl;return0;}(5分)48.寫出一個完整的C++程序,使用系統(tǒng)函數(shù)pow(x,y)計算xy的值,注意包含頭文件cmath。(5分)49.聲明一個Circle類,有數(shù)據(jù)成員radius(半徑)、成員函數(shù)area(),計算圓的面積,構造一個Circle的對象進行測試。(5分)
一單選題(共9題,總分值9分,下列選項中有且僅有一個選項符合題目要求,請在答題卡上正確填涂。)1.本題正確的答案選項為:A解析過程:2.本題正確的答案選項為:C解析過程:類是一種用戶自定義的數(shù)據(jù)類型,類中成員均具有一種訪問權限。公有成員定義了類的外部接口。私有成員是被隱藏的數(shù)據(jù),只有該類的成員函數(shù)或友元函數(shù)才可以引用它。保護成員具有公有成員和私有成員的雙重性質(zhì),可以被該類或派生類的成員函數(shù)或友元函數(shù)引用??梢娫陬惗x的外部,可以被任意函數(shù)訪問的成員是public的類成員。3.本題正確的答案選項為:D解析過程:4.本題正確的答案選項為:C解析過程:5.本題正確的答案選項為:B解析過程:使用運算符new創(chuàng)建對象數(shù)組的格式如下:new<類型說明符>[<算術表達式>]其中,<算術表達式>給出數(shù)組的大小,后面不能再跟構造函數(shù)參數(shù),所以用它創(chuàng)建對象數(shù)組時不能指定初始值。6.本題正確的答案選項為:D解析過程:C語言是面向過程的。C++語言是一種經(jīng)過改進的更為優(yōu)化的C語言,是一種混合型語言,既面向過程也面向?qū)ο蟆?.本題正確的答案選項為:B解析過程:8.本題正確的答案選項為:B解析過程:this指針是由C++編譯器自動產(chǎn)生且較常用的一個隱含對象指針,它不能被顯式聲明。當創(chuàng)建一個對象時,this指針就初始化指向該對象。但只有非靜態(tài)成員函數(shù)才擁有this指針,并通過該指針來處理對象。9.本題正確的答案選項為:A解析過程:指針定義的具體格式如下所示:<類型>*<指針名1>,*<指針名2>,……;二多選題(共2題,總分值2分,下列選項中至少有2個或2個以上選項符合題目要求,請在答題卡上正確填涂。)10.本題正確的答案選項為:A,C解析過程:析構函數(shù)的作用是在對象消失時執(zhí)行一項清理任務。如果一個類中沒有定義析構函數(shù),系統(tǒng)將自動生成一個默認析構函數(shù)。析構函數(shù)沒有參數(shù),當然不可能設置默認參數(shù)。11.本題正確的答案選項為:A,D解析過程:對象是計算機內(nèi)存中的一塊區(qū)域。在對象中,不但存有數(shù)據(jù),而且存有代碼,使得每個對象在功能上相互之間保持相對獨立。對象之間存在各種聯(lián)系,但它們之間只能通過消息進行通信。三判斷題(共8題,總分值8分正確的填涂“A”,錯誤的填涂“B”。)12.本題正確的答案選項為:T解析過程:13.本題正確的答案選項為:F解析過程:函數(shù)可設置默認參數(shù),且允許將一個函數(shù)的所有參數(shù)都設置為默認參數(shù)。14.本題正確的答案選項為:T解析過程:15.本題正確的答案選項為:F解析過程:消息是面向?qū)ο蟪绦蛟O計用來描述對象之間通信的機制。向?qū)ο蟆鞍l(fā)送消息”只需告訴對象做什么,對象根據(jù)這個消息決定如何做。16.本題正確的答案選項為:F解析過程:17.本題正確的答案選項為:T解析過程:18.本題正確的答案選項為:T解析過程:19.本題正確的答案選項為:F解析過程:程序設計方法是獨立于具體程序設計語言的一種技術,學習C++語言是學習面向?qū)ο蟪绦蛟O計方法的重要途徑之一。四名詞解釋題(共4題,總分值12分)20.本題正確的答案選項為:所謂引用就是給對象取一個別名,使用該別名可以存取該對象。換句話說是使新對象和原對象共用一個地址。解析過程:21.本題正確的答案選項為:消息是面向?qū)ο蟪绦蛟O計用來描述對象之間通信的機制。一個消息就是一個對象要求另一個對象實施某種操作的一個請求。解析過程:22.本題正確的答案選項為:面向?qū)ο蠓椒ㄖ械姆庋b就是把抽象出來的對象的屬性和行為結(jié)合成一個獨立的單位,并盡可能隱蔽對象的內(nèi)部細節(jié)。解析過程:23.本題正確的答案選項為:重載函數(shù)指在同一個作用域內(nèi)名字相同而參數(shù)不同的函數(shù)。重載函數(shù)通常用來對具有相似行為而數(shù)據(jù)類型或數(shù)據(jù)個數(shù)不同的操作提供一個通用的名稱。解析過程:五填空題(共13題,總分值13分)24.本題正確的答案選項為:數(shù)據(jù)區(qū),代碼區(qū),棧區(qū),堆區(qū)解析過程:25.本題正確的答案選項為:面向過程的結(jié)構化程序設計方法,面向?qū)ο蟮某绦蛟O計方法解析過程:26.本題正確的答案選項為:1解析過程:27.本題正確的答案選項為:值傳遞,引用傳遞解析過程:28.本題正確的答案選項為:iostream解析過程:29.本題正確的答案選項為:程序=數(shù)據(jù)結(jié)構+算法,程序=對象+消息解析過程:30.本題正確的答案選項為:任意訪問權限許可解析過程:31.本題正確的答案選項為:cout,<<解析過程:32.本題正確的答案選項為:抽象性,封裝性,繼承性,多態(tài)性解析過程:33.本題正確的答案選項為:構造函數(shù),析構函數(shù)解析過程:34.本題正確的答案選項為:樣板,實例解析過程:35.本題正確的答案選項為:.,->,.解析過程:36.本題正確的答案選項為:效率解析過程:六簡答題(共8題,總分值31分)37.本題正確的答案選項為:指創(chuàng)建類的對象。解析過程:38.本題正確的答案選項為:不必一致。所有的參數(shù)是根據(jù)位置和類型而不是名字來區(qū)分的。解析過程:39.本題正確的答案選項為:拷貝構造函數(shù)是一種特殊的構造函數(shù),它的作用是用一個已經(jīng)存在的對象去初始化另一個對象。為了保證所引用的對象不被修改,通常把引用參數(shù)聲明為const參數(shù)。在以下3種情況下,拷貝構造函數(shù)都會被自動調(diào)用:◆當用類的一個對象去初始化該類的另一個對象時;◆當函數(shù)的形參是類的對象,進行形參和實參結(jié)合時;◆當函數(shù)的返回值是類的對象,函數(shù)執(zhí)行完成返回調(diào)用者時。解析過程:40.本題正確的答案選項為:結(jié)構化程序設計方法著眼于系統(tǒng)要實現(xiàn)的功能,從系統(tǒng)的輸入輸出出發(fā),分析系統(tǒng)要做哪些事情,進而考慮如何做這些事情,自頂向下地對系統(tǒng)的功能進行分解,來建立系統(tǒng)的功能結(jié)構和相應的程序模塊結(jié)構,有效地將一個較復雜的程序系統(tǒng)設計任務分解成許多易于控制和處理的子任務,便于開發(fā)和維護。隨著程序規(guī)模與復雜性的增長,這種面向過程的結(jié)構化程序設計方法存在明顯的不足之處。首先是數(shù)據(jù)安全性問題。由于數(shù)據(jù)被每個模塊所共用,因此是不安全的,一旦出錯,很難查明原因。其次是可維護性及可重用性差。它把數(shù)據(jù)結(jié)構和算法分離為相互獨立的實體,一旦數(shù)據(jù)結(jié)構需要改變時,常常要涉及整個程序,修改工作量極大并容易產(chǎn)生新的錯誤。每一種相對于老問題的新方法都要帶來額外的開銷。另外,圖形用戶界面的應用程序,很難用過程來描述和實現(xiàn),開發(fā)和維護也都很困難。解析過程:41.本題正確的答案選項為:在值調(diào)用機制中,作為實參的表達式的值被復制到由對應的形參名所標識的一個對象中,作為形參的初始值。函數(shù)體對形參的訪問、修改都是在這個標識對象上操作的,與實參無關,即數(shù)據(jù)的傳遞是單向的。使用引用作函數(shù)的形參時,調(diào)用函數(shù)的實參要用變量名。實參傳遞給形參,相當于在被調(diào)用函數(shù)中使用了實參的別名。于是,在被調(diào)用函數(shù)中對形參的操作實質(zhì)是對實參的直接操作,即數(shù)據(jù)的傳遞是雙向的。解析過程:42.本題正確的答案選項為:結(jié)構化程序設計方法中,把數(shù)據(jù)結(jié)構和算法分離為相互獨立的實體;而在面向?qū)ο蟪绦蛟O計中,數(shù)據(jù)結(jié)構和算法封裝在一起,結(jié)合成一個獨立的單位,即對象,并盡可能隱蔽對象的內(nèi)部細節(jié)。對象的私有屬性只能由這個對象的行為來讀取和修改,與外部的聯(lián)系通過公有行為充當外部接口。解析過程:43.本題正確的答案選項為:名字空間用來防止命名的沖突。解析過程:44.本題正確的答案選項為:類是一種用戶自己定義的數(shù)據(jù)類型,和其他數(shù)據(jù)類型不同的是,組成這種類型的不僅可以有數(shù)據(jù),而且可以有對數(shù)據(jù)進行操作的函數(shù)。程序員可以使用這個新類型在程序中聲明新的變量,具有類類型的變量稱為對象。創(chuàng)建對象時,類被用做樣板,對象稱為類的實例。解析過程:七綜合題(共5題,總分值25分)45.本題正確的答案選項為:【輸出結(jié)果】DefaultconstructorofPartConstructorofPart,3DefaultconstructorofPartConstructorofWholeDestructorofWholeDestructorofPart,0DestructorofPart,3DestructorofPart,0解析過程:程序的Whole類中出現(xiàn)了類Part的3個對象p1、p2和p3,作為該類的數(shù)據(jù)成員,則p1、p2和p3被稱為子對象。當建立Whole類的對象w時,子對象p1、p2和p3被建立,相應的構造函數(shù)被執(zhí)行。由于p1在Whole類中先說明,所以先執(zhí)行它所使用的構造函數(shù),即類Part的默認構造函數(shù),接著p2執(zhí)行它所使用的有參構造函數(shù),緊接著初始化p3,由于Whole類構造函數(shù)的成員初始化列表中沒有子對象p3進行初始化的選項,所以執(zhí)行類Part的默認構造函數(shù),當所有子對象被構造完之后,對象w的構造函數(shù)才被執(zhí)行,從而得到前4行輸出結(jié)果,而后4行是執(zhí)行相應析構函數(shù)的輸出結(jié)果。46.本題正確的答案選項為:【輸出結(jié)果】InitdefaInitdefaInit15解析過程:①程序聲明了2個對象x和y,類中有2個構造函數(shù)。②程序首先執(zhí)行語句1,創(chuàng)建對象x,調(diào)用默認構造函數(shù)。由于對象x是對象數(shù)組,每個數(shù)組元素被創(chuàng)建時都要調(diào)用構造函數(shù),所以默認構造函數(shù)被調(diào)用了2次,輸出第1、2行結(jié)果。程序接著執(zhí)行語句2,創(chuàng)建對象y,調(diào)用帶一個參數(shù)的構造函數(shù),輸出第3行結(jié)果。47.本
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2021屆湖北省孝感市普通高中高一下學期期末考試數(shù)學試題
- 2025年建筑施工《春節(jié)節(jié)后復工復產(chǎn)》工作實施方案 合計3份
- 小學一年級20以內(nèi)數(shù)學口算練習題大全
- 學校聘用教師勞動合同書5篇
- 《肌組織課件》課件
- 你聽“你聽多美”命題作文寫作指導與精彩例文
- 湖南高考語文試題分析報告
- 《勞動定額知識》課件
- 商超連鎖店話務員工作總結(jié)
- 稅務籌劃與規(guī)劃實踐經(jīng)驗分享
- GB/T 45002-2024水泥膠砂保水率測定方法
- 2024年《論教育》全文課件
- 浙江省溫州市鹿城區(qū)2023-2024學年三年級上學期期末數(shù)學試卷
- 一年級口算天天練(可直接打印)
- 《模擬電子技術基礎》課程設計-心電圖儀設計與制作
- 繪本brown bear教案及反思
- 精品電力工程質(zhì)量目標、質(zhì)量保證體系及技術組織措施
- 川中干法脫硫
- 船舶PSC檢查表(全船)
- 檳榔黃化病的診斷及防控
- 腫瘤基礎知識培訓
評論
0/150
提交評論