c++期末考試真題(1)_第1頁
c++期末考試真題(1)_第2頁
c++期末考試真題(1)_第3頁
c++期末考試真題(1)_第4頁
c++期末考試真題(1)_第5頁
免費預覽已結束,剩余5頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、一、 填空題1. 類是一組具有共同的_屬性_ 特征和行為特征的對象的抽象。2. 在面向對象程序設計中,一個對象向另一個對象發(fā)出的請求被稱為_消息_ 。3. 用class作關鍵字進行類聲明,默認的訪問屬性是private(私有的)4. 函數(shù)名重載是指同一作用域內的多個函數(shù)使用相同的函數(shù)名,這些同名函數(shù)要從參數(shù)類型和參數(shù)個數(shù)進行區(qū)分。5. 構造函數(shù)的作用是_在創(chuàng)建對象時對對象進行初始化 。6. 多重繼承指一個派生類可以有_多個基類 。7. 保護繼承下,基類中所有公有成員在派生類中的訪問屬性是_保護的 。8. 假定要訪問一個對象指針p 所指對象中的b 成員,則表示方法_ 。 9.若需要把一個函數(shù)“v

2、oid F()定義為一個類AB的友元函數(shù),則應在類AB的定義中加入一條語句:friend void F(AB &)_。10.Static成員函數(shù)與普通成員函數(shù)的區(qū)別是 靜態(tài)成員函數(shù)沒有this指針 o11.若要在程序文件中進行標準輸入輸出操作,則必須在開始的#include 命令中使用_ iostream 頭文件。12.1. 關鍵字 C 說明對象或變量初始化后不會被修改。a. static b. public c. const d. inline2. 如果調用帶有默認參數(shù)的函數(shù)時缺少一個參數(shù),則B參數(shù)就作為這一參數(shù)。a. 第一個b. 最后一個c. 中間一個d. 以上都不是3. 成員函數(shù)

3、可聲明為靜態(tài)的,條件是它不訪問C類成員。a. 靜態(tài)b. 常數(shù) c. 非靜態(tài)d. 公共4. 內聯(lián)函數(shù)執(zhí)行起來比標準函數(shù)B。a. 更慢b. 更快 c. 次數(shù)更多d. 以上都不是5. 默認參數(shù)的值由C提供。a. 該函數(shù)b. 調用程序c. 上述二者d. 以上都不是6. 在 C+ 中,混合類型表達式A。a. 允許存在b. 為一錯誤c. 從 int 到 float d. 從 float 到 int7. 表達式 long(intVar) 也可表示為C。a. intvar = long; b. intVar(long) c. (long)intVar d. 以上都不是8. 靜態(tài)數(shù)據成員的生存期A。a. 與整個

4、程序相同b. 不長于類的生存期c. 取決于創(chuàng)建的對象數(shù)d. 以上都不是9. 要讓一個類中的所有對象具有共同的數(shù)據,請使用C。a. 常數(shù)成員變量b. 私有數(shù)據成員c. 靜態(tài)數(shù)據成員d. 以上都是1、C+隹(C )。A. 面向對象的程序設計語言B. 面向過程的程序設計語言C. 既支持面向對象的程序設計又支持面向過程的程序設計的混合型語言D. 非結構化的程序設計語言2、面向對象程序設計思想的主要特征中不包括(A. 封裝性B. 多態(tài)性C. 繼承性D. 功能分解,逐步求精3、若定義:string str; 當語句 cin>>str; 執(zhí)行時,從鍵盤輸入:Microsoft Visual St

5、udio !所得的結果是str=(B ) 。A. Microsoft Visual Studio ! B. MicrosoftC. Microsoft VisualD. Microsoft Visual Studio4、考慮下面的函數(shù)原型聲明:void testDefaulParam(int a,int b=7,char z='*');下面函數(shù)調用中,不合法的是(C ) 。A. testDefaulParam(5);B. testDefaulParam(5,8);C. testDefaulParam(5,'#');D. testDefaulParam(0,0,&

6、#39;*');5、下列語句中,將函數(shù)int sum(int x, int y)正確重載的是(C )。A. float sum(int x, int y);B. int sum(int a, int b);C. float sum(float x, float y);D. double sum(int y, int x);6、下列表示引用的方法中,( A )是正確的。已知: int a=1000;A. int &x=a; B. char &y; C. int &z=1000; D. float &t=&a;7、在一個函數(shù)中,要求通過函數(shù)來實現(xiàn)一種

7、不太復雜的功能,并且要求加快執(zhí)行速度,選用(A ) 。A. 內聯(lián)函數(shù)B. 重載函數(shù)C. 遞歸調用D. 嵌套調用8、下列有關C+談的說法中,不正確的是(D )。A. 類是一種用戶自定義的數(shù)據類型B. 只有類中的成員函數(shù)或類的友元函數(shù)才能存取類中的私有成員C. 在類中,如果不做特別說明,所有成員的訪問權限均為私有的D. 在類中,如果不做特別說明,所有成員的訪問權限均為公用的9、已知X類,則當程序執(zhí)行到語句:X array3;時,調用了( D )次構造函數(shù)A. 0B. 1C. 2D. 310、下面說法中,正確的是(B )A. 一個類只能定義一個構造函數(shù),但可以定義多個析構函數(shù)B. 一個類只能定義一個

8、析構函數(shù),但可以定義多個構造函數(shù)C. 構造函數(shù)與析構函數(shù)同名,只要名字前加了一個求反符號()D. 構造函數(shù)可以指定返回類型,而析構函數(shù)不能指定任何返回類型,即使是void類型也不可以12、下面描述中,表達錯誤的是(B )A. 公用繼承時基類中的public 成員在派生類中仍是public 的B. 公用繼承時基類中的private 成員在派生類中仍是private 的C. 公用繼承時基類中的protected 成員在派生類中仍是protected 的D.私有繼承時基類中的public成員在派生類中是private的14、下面(B )的敘述不符合賦值兼容規(guī)則。A. 派生類的對象可以賦值給基類的對象

9、B. 基類的對象可以賦值給派生類的對象C. 派生類的對象可以初始化基類的對象D. 派生類的對象的地址可以賦值給指向基類的指針16、下面關于友元的描述中,錯誤的是(D ) 。A. 友元函數(shù)可以訪問該類的私有數(shù)據成員B. 一個類的友元類中的成員函數(shù)都是這個類的友元函數(shù)C. 友元可以提高程序的運行效率D. 類與類之間的友元關系可以繼承17、下列關于靜態(tài)數(shù)據成員的說法,不正確的是(C ) 。A. 類中定義的公用靜態(tài)數(shù)據成員,可以通過類的對象來訪問B. 類中定義的所有靜態(tài)數(shù)據成員,都必須在類外初始化C. 靜態(tài)數(shù)據成員不是所有對象所共用的D. 普通的成員函數(shù)可以直接訪問類中的靜態(tài)數(shù)據成員18、如果表達式+

10、i*k中的“+”和“*”都是重載的友元運算符,若采用運算符函數(shù)調用格式,則表達式還可以表示為(BA. operator*+(),k)B. operator*(operator+(i),k)C. +().operator*(k)D. *(operator+(i)19、下面對模板的聲明,正確的是( C )。A. template<T>B. template<class T1, T2>C. template<class T1, class T2> D. template<class T1; class T2>20、下列的各類函數(shù)中,( C )不是類的成

11、員函數(shù)A.構造函數(shù)B.析構函數(shù) C.友元函數(shù) D.復制構造函數(shù)二、填空題(前14個空,每空1分,后3個空,每空2分,共20分)1、類和對象的關系可表述為:類是對象的抽象,而對象則是類的 實例 。2、靜態(tài)成員函數(shù)沒有隱含的this指針 ,所以,在C+®序中,靜態(tài)成員函數(shù)主要用來訪問靜態(tài)數(shù)據成員,而不訪問非靜態(tài)成員。3、在圖1中,A, B, C, D, E, F均是類,其中屬于單名承的派生類有E 、屬于多繼承的派生類有D、F ,類F的基類有 A、B、C、D、E ,類A的派生類有 D、F。圖1類的繼承層次圖7、若要把void fun()定義為類A的友元函數(shù),則應在類A的定義中加入語句fri

12、end voidfun(A&a) 。8、列出C+好的兩種代碼復用方式:繼承 和 組合或模板 。9、析構函數(shù)的作用是在對象被系統(tǒng)釋放才前做一些內存酒理工作。10、假定A是一個類名,則該類的拷貝構造函數(shù)的原型說明語句為:一A(constA&)。11、后置自增運算符“+”重載為類的成員函數(shù)(設類名為 A)的形式為:A operator+(int)。一、單項選擇題(每小題2分,共40分)1、關于C+WC語言關系的描述中,(D )是錯誤的。A. C語言是C+鈉言的一個子集B. C語言與C+郵言是兼容的C. C+胡言對C語言進行了一些改進D. C+鈉言和C語言都是面向對象的4、系統(tǒng)在調用重

13、載函數(shù)時往往根據一些條件確定哪個重載函數(shù)被調用,在下列選 項中,不能作為依據的是(A )。A.函數(shù)的返回值類型B.參數(shù)的類型C.函數(shù)名稱D,參數(shù)個數(shù)5、下列有關C+談的說法中,不正確的是( D )。A.類是一種用戶自定義的數(shù)據類型B.只有類中的成員函數(shù)或類的友元函數(shù)才能存取類中的私有成員C.在類中,如果不做特別說明,所有成員的訪問權限均為私有的D.在類中,如果不做特別說明,所有成員的訪問權限均為公用的7、有關析構函數(shù)的說法,不正確的是( B )。A.析構函數(shù)有且僅有一個B.析構函數(shù)和構造函數(shù)一樣可以有形參C.析構函數(shù)的功能是在系統(tǒng)釋放對象之前作一些內存清理工作D.析構函數(shù)無任何函數(shù)類型8、類定

14、義的內容允許被其對象無限制地存取的是( C )。A. private部分B. protected部分C. public部分 D.以上都不對10、運用運算符delete刪除一個動態(tài)對象時(C )。A.系統(tǒng)首先為該動態(tài)對象調用構造函數(shù),再釋放其占用的內存B.系統(tǒng)首先釋放該動態(tài)對象占用的內存,再為其調用構造函數(shù)C.系統(tǒng)首先為該動態(tài)對象調用析構函數(shù),再釋放其占用的內存D.系統(tǒng)首先釋放動態(tài)對象占用的內存,再為其調用析構函數(shù)11、可以在類外用的形式訪問派生類對象 p的基類成員a,其中a是(D )。A.私有繼承的公用成員C.公用繼承的保護成員B.公用繼承的私有成員D.公用繼承的公用成員12、在公用繼承方式下

15、,有關派生類對象和基類對象的關系,不正確的敘述是(C )。A.派生類的對象可以賦給基類的對象B.派生類的對象可以初始化基類的引用C.派生類的對象可以直接訪問基類中的成員D.派生類的對象的地址可以賦給指向基類的指針18、下列運算符中,(C )運算符在C+4不能被重載。A. &&B. 口C.二D. new19、模板的使用實際上是將類模板實例化成一個( C )。A.函數(shù)B.對象C.類D.抽象類20、假定MyClas勘一個類,則該類的拷貝構造函數(shù)的聲明語句為( C )。A. MyClass(MyClass x)B. MyClass&(MyClass x)C. MyClass(M

16、yClass &x)D. MyClass(MyClass *x)二、填空題(前16個空,每空1分,后2個空,每空2分,共20分)1、類和對象的關系可表述為:類是對象的抽象:而對象則是類的實例I。2、在C+鐘,三種繼承方式的說明符號為public 、private 和 protected :如果不加說明,則默認的繼承方式為private _ 。5、類的靜態(tài)成員分為 靜態(tài)數(shù)據成員和 靜態(tài)成員函數(shù) 。6、運算符重載要求保持其原來的操作數(shù)個數(shù)、 結合性、 優(yōu)先級 和語法結構。7、通過關鍵字template 可以聲明模板,通過關鍵字class域typename)指定函數(shù)模板的類型參數(shù),有幾個類型

17、參數(shù)就有幾個類型關鍵字。8、列出C+班兩種用戶自定義的數(shù)據類型:類 、 結構體 。單項選擇題(共20題,每題1分,共20分)1、下列關于C+而識符的命名不合法的是(C )與C丁樣A. PadB. name_1 C. A#bcD. _a122、若有以下類型標識符定義:int x=2; char w='a'; float y=; double z=;則表達式w*x+y-z的結果類型是(D)A. floatB. charC. int D. double6、對 重載 函數(shù)形參的描述中,錯誤的是DA. 參數(shù)的個數(shù)可能不同B. 參數(shù)的類型可能不同C. 參數(shù)的順序可能不同D. 參數(shù)的個數(shù)、類

18、型、順序都相同,只是函數(shù)的返回值類型不同7、以下能正確定義數(shù)組并正確賦初值的語句是DA. int N=5,bNN;B. int a2=1,3,4,5;C. int c2=1,2,3,4;D. int d32=1,2,3,4;8、下列給字符數(shù)組進行的初始化中,不正確的是DA. char s1="abcd"B. char s23='x','y','0'C. char s3='a','x','y','0'D. char s46="xyz","

19、;mnp"9、通常的拷貝構造函數(shù)的參數(shù)是CA某個對象名B.某個對象成員名C某個對象的引用D.某個對象的指針名10、關于構造函數(shù)特點的描述中,錯誤的是AA. 定義構造函數(shù)必須指出類型(構造函數(shù)特點是無返回類型)B. 構造函數(shù)的名字與該類的類名相同C. 一個類中可定義0 至多個構造函數(shù)D. 構造函數(shù)是一種成員函數(shù)11、下面程序的運行結果為C#include <iostream>int add(int a,int b);void main()extern int x,y;cout<<add(x,y)<<endl;int x=20,y=5;int add(

20、int a,int b)int s=a+b;return s;A. 20B. 5C. 25D.編譯會提示出錯信息13、關于 友元函數(shù) 的描述中,錯誤的是BA. 友元函數(shù)不是成員函數(shù)B. 友元函數(shù)只能訪問類中私有成員C. 友元函數(shù)破壞隱藏性,盡量少用D. 友元函數(shù)說明在類體內,使用關鍵字friend14、如果有int x,*p; float y,*q; 則下面操作正確的是CA p=xB p=qC p=&xD p=&y16、若數(shù)組名作實參而指針變量作形參,函數(shù)調用時實參傳給形參的是DA. 數(shù)組的長度B. 數(shù)組第一個元素的值C. 數(shù)組所有元素的值D. 數(shù)組第一個元素的地址17、對于動

21、態(tài)分配內存空間描述正確的是DA.使用new運算符分配的內存空間的長度必需是常量8 delete 運算符可以釋放動態(tài)的存儲空間和靜態(tài)的存儲空間C.由new分配的內存空間是不連續(xù)的D delete 運算符只能釋放由new 分配的動態(tài)存儲空間18、能夠釋放對象所占資源的是()AA.析構函數(shù) B.數(shù)據成員C.構造函數(shù) D.靜態(tài)成員函數(shù)20、在C+4串流類是在頭文件中定義的,下列不屬于串流類的是) CA strstreamB ostrstream C ofstreamD istrstream二、填空題(共9 題 16 空,每空1 分,共 16 分)1 、函數(shù)重載時,編譯系統(tǒng)會根據_形參的類型_ 或 _形

22、參的個數(shù)_ 來區(qū)分。 與返回值類型無關2、若有char a80;則cin>>a表示從鍵盤上讀入一個 _字符_ _到數(shù)組a中。3、若希望用一個已有對象來構造另一個同類型的對象,可以使用_拷貝構造函數(shù)_來實現(xiàn)。4、靜態(tài)成員(static)屬于 類 ,而不屬于任何一個對象,它被同一個類的所有對象共享。6、重載運算符的含義必須清楚,不能有_二義性 _。9、C+勺I/O是以字節(jié)流的形式實現(xiàn)的,每個C+S譯系統(tǒng)都帶有一個面向對象的輸入/輸出軟件包,這就是I/O 流類庫。C+湎向對象程序設計語言期末考試試卷一 . 選擇題(每題1 分 ,共 10分 )1 .在C+中,常量'和"者

23、 A。A)完全不同B)存儲長度相同C)類型相同D)存儲值相同2 .有二維字符數(shù)組 char s46= " zhang “,“ gao“," tan耿彳T 程 Jwangk<*s2,屏幕上 顯示_D。A) gaoB) tangC) gD) t3 .若w=1,x=2,y=3,z=4,則條件表達式 w>xw:z>yz:x的結果為A 。A) 4B) 3C)2D) 14 .設a和b為整型變量,執(zhí)行語句b=(a=2+3,a*4),a+5;后a和b的值為_D。A)5,10B)20,25 C)5,25D)5,205 .如果整型變量a,b,c的值分別為5,4,3,則語句if

24、(a>=b>=c) C+;執(zhí)行后c的值是_C。A)5B)4C)3D)2int i=10; 執(zhí)行下列語句后,i 的值是_D。 case 9: i+=1; case 10: i+=1; case 11: i+=1; case 12: i+=1;A) 10B) 11C) 12D) 136 . 執(zhí)行以下程序:#include<iostream> void main(void) char c=0; cout<<c<< n ; 輸出的結果是_D。A) 0 "B)語法錯C)0D) 一個空行7 . 設有類型說明:enum colorred,yellow=3,w

溫馨提示

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

最新文檔

評論

0/150

提交評論