




下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、A.面向對象的程序設計語言B.面向過程的程序設計語言填空題1.類是一組具有共同的_屬性_特征和行為特征的對象的抽象。2.在面向對象程序設計中,一個對象向另一個對象發出的請求被稱為3.用class作關鍵字進行類聲明,默認的訪問屬性是private(私有的)_4.函數名重載是指同一作用域內的多個函數使用相同的函數名,這些同名函數要從 數類型和參數個數 _ 進行區分。5.構造函數的作用是_在創建對象時 對對象進行初始化_6.多重繼承指一個派生類可以有_多個基類 _ 。7.保護繼承下,基類中所有公有成員在派生類中的訪問屬性是_保護的 _ 。8._假定要訪問一個對象指針P所指對象中的b成員,則表示方法
2、_ 。9.若需要把一個函數“void F()定義為一個類AB的友元函數,則應在類AB的定義中加入 一條語句:friend void F(AB &)_。10.Static成員函數與普通成員函數的區別是_靜態成員函數沒有this指針 _11.若要在程序文件中進行標準輸入輸出操作,則必須在開始的#include命令中使用_ iostream _頭文件。12.1.關鍵字 _C_說明對象或變量初始化后不會被修改。要讓一個類中的所有對象具有共同的數據,請使用a.常數成員變量b.私有數據成員c.靜態數據成員d.以上都是1、C+是(C)。C.既支持面向對象的程序設計又支持面向過程的程序設計的混合型語言
3、_消息_2.3.4.a. static b. Public c. const d. inline如果調用帶有默認參數的函數時缺少一個參數,則a.第一個b.最后一個 成員函數可聲明為靜態的,條件是它不訪問a.靜態b.常數c.內聯函數執行起來比標準函數a.更慢b.更快c.c.中間一個非靜態d.公共_ B_ _B_ _參數就作為這一參數。d.以上都不是類成員。次數更多d.以上都不是_ 提供。c.上述二者5.默認參數的值由 _Ca.該函數b.調用程序6.在C+中,混合類型表達式 _A_a.允許存在b.為一錯誤c.從int到float d.從float到int表達式long(intVar)也可表示為a.
4、 intvar = long;靜態數據成員的生存期a.與整個程序相同d.以上都不是7.8.c.取決于創建的對象數b. intVar(long) c. (long)intVar_ A_。b.不長于類的生存期d.以上都不是d.以上都不是9.A.面向對象的程序設計語言B.面向過程的程序設計語言D.非結構化的程序設計語言A. 0B. 1C. 2D. 3A.一個類只能定義一個構造函數,但可以定義多個析構函數3、若定義:string str;當語句cinstr;執行時,從鍵盤輸入:Microsoft Visual Studio !已知:int a=1000;選用(A)。8下列有關C+類的說法中,不正確的是
5、(D)。A.類是一種用戶自定義的數據類型B.只有類中的成員函數或類的友元函數才能存取類中的私有成員C.在類中,如果不做特別說明,所有成員的訪問權限均為私有的D.在類中,如果不做特別說明,所有成員的訪問權限均為公用的X array3;時,調用了(D)次構造函數。2、面向對象程序設計思想的主要特征中不包括(D)。A.封裝性B.多態性C.繼承性D.功能分解,逐步求精所得的結果是str=(B)。A. Microsoft Visual Studio !B. MicrosoftC. Microsoft VisualD. Microsoft Visual Studio4、考慮下面的函數原型聲明:void t
6、estDefaulParam(int a,int b=7,char z=*);面函數調用中,不合法的是()。A. testDefaulParam(5);B. testDefaulParam(5,8);C. testDefaulParam(5,#);D. testDefaulParam(0,0,*);5、下列語句中,將函數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
7、x);6、下列表示引用的方法中,()是正確的。A. int &x=a;B. char &y;C. int &z=1000;D. float &t=&a;7、在一個函數中,要求通過函數來實現一種不太復雜的功能,并且要求加快執行速度,A.內聯函數B.重載函數C.遞歸調用D.嵌套調用9、已知X類,貝U當程序執行到語句:A. 0B. 1C. 2D. 3A.一個類只能定義一個構造函數,但可以定義多個析構函數10、下面說法中,正確的是(BA. operator*+(),k)B. operator*(operator+(i),k)14、下面(B)的敘述不符合賦值兼容規
8、則。A.派生類的對象可以賦值給基類的對象B.基類的對象可以賦值給派生類的對象C.派生類的對象可以初始化基類的對象D.派生類的對象的地址可以賦值給指向基類的指針16、下面關于友元的描述中,錯誤的是(D)。A.友元函數可以訪問該類的私有數據成員B.一個類的友元類中的成員函數都是這個類的友元函數C.友元可以提高程序的運行效率D.類與類之間的友元關系可以繼承17、下列關于靜態數據成員的說法,不正確的是(C)。A.類中定義的公用靜態數據成員,可以通過類的對象來訪問B.類中定義的所有靜態數據成員,都必須在類外初始化C.靜態數據成員不是所有對象所共用的D.普通的成員函數可以直接訪問類中的靜態數據成員18、如
9、果表達式+i*k中的“+”和“*”都是重載的友元運算符,若采用運算符函數B.一個類只能定義一個析構函數,但可以定義多個構造函數C.構造函數與析構函數同名,只要名字前加了一個求反符號)D.構造函數可以指定返回類型,而析構函數不能指定任何返回類型,即使是void類型也不可以12、下面描述中,表達錯誤的是(B)A.公用繼承時基類中的public成員在派生類中仍是public的B.公用繼承時基類中的private成員在派生類中仍是private的C.公用繼承時基類中的protected成員在派生類中仍是protected的D.私有繼承時基類中的public成員在派生類中是private的調用格式,則表
10、達式還可以表示為(B)。A. operator*+(),k)B. operator*(operator+(i),k)19、下面對模板的聲明,正確的是(C)。C. +().operator*(k)D. *(operator+(i)A. temp latevTB. temp latevciass T1, T2主要用來訪問靜態數據成員,而不訪問非靜態成員。3、在圖1中,A,B,C,D,E,F均是類,其中屬于單繼承的派生類有派生類有7、若要把void fun()定義為類A的友元函數,則應在類A的定義中加入語句friend voidfun(A&a)C. temp latevciass T1, c
11、lass T220、下列的各類函數中,(CA.構造函數B.析構函數D. tempi atevclass T1; class T2)不是類的成員函數C.友元函數D.復制構造函數、填空題(前14個空,每空1分,后3個空,每空2分, 共20分)1、類和對象的關系可表述為:類是對象的抽象,而對象則是類的實例2、靜態成員函數沒有隱含的this指針,所以,在C+程序中,靜態成員函數于多繼承的派生類有,類F的基類有A、B、C、D、E8列出C+中的兩種代碼復用方式:繼承和 組合或模板9、析構函數的作用是在對象被系統釋放之前做一些內存清理工作10、假定A是一個類名,則該類的拷貝構造函數的原型說明語句為:A(co
12、nstA&)11、后置自增運算符“+”重載為類的成員函數(設類名為A)的形式為:A operator+(int)。一、單項選擇題(每小題2分,共40分)1、關于C+與C語言關系的描述中,()是錯誤的。A. temp latevTB. temp latevciass T1, T2A.C語言是C+語言的一個子集B.C語言與C+語言是兼容的C.C+語言對C語言進行了一些改進D.C+語言和C語言都是面向對象的4、系統在調用重載函數時往往根據一些條件確定哪個重載函數被調用, 在下列選項中, 不能作為依據的是(AA.函數的返回值類型B.參數的類型C.函數名稱D.參數個數5、下列有關C+類的說法中,
13、不正確的是(D)。A.類是一種用戶自定義的數據類型B.只有類中的成員函數或類的友元函數才能存取類中的私有成員C.在類中,如果不做特別說明,所有成員的訪問權限均為私有的D.在類中,如果不做特別說明,所有成員的訪問權限均為公用的7、有關析構函數的說法,不正確的是(B)。C.析構函數的功能是在系統釋放對象之前作一些內存清理工作D.析構函數無任何函數類型8、類定義的內容允許被其對象無限制地存取的是(C)。A.private部分B.protected部分C.public部分D.以上都不對A.系統首先為該動態對象調用構造函數,再釋放其占用的內存B.系統首先釋放該動態對象占用的內存,再為其調用構造函數C.系
14、統首先為該動態對象調用析構函數,再釋放其占用的內存D.系統首先釋放動態對象占用的內存,再為其調用析構函數11、可以在類外用的形式訪問派生類對象P的基類成員a,其中3是(D)。12、在公用繼承方式下, 有關派生類對象和基類對象的關系, 不正確的敘述是(C)。A.派生類的對象可以賦給基類的對象B.派生類的對象可以初始化基類的引用C.派生類的對象可以直接訪問基類中的成員D.派生類的對象的地址可以賦給指向基類的指針)。A.析構函數有且僅有一個B.析構函數和構造函數一樣可以有形參10、運用運算符delete刪除一個動態對象時(C)。A.私有繼承的公用成員B.公用繼承的私有成員C.公用繼承的保護成員D.公
15、用繼承的公用成員18、下列運算符中,(C)運算符在C+中不能被重載。A&BC:Dnew19、模板的使用實際上是將類模板實例化成一個(C)。A.函數B.對象C.類D.抽象類20、 假定MyClass為一個類, 貝U該類的拷貝構造函數的聲明語句為(C)。A.MyClass(MyClass x)B.MyClass&(MyClass x)C.MyClass(MyClass &x)D.MyClass(MyClass *x)、填空題(前16個空,每空1分,后2個空,每空2分,共20分)1、類和對象的關系可表述為:類是對象的抽象,而對象則是類的實例。2、在C+中,二種繼承方式的說明符
16、號為public、private和protected,如果不加說明,則默認的繼承方式為p rivate。5、類的靜態成員分為 靜態數據成員和靜態成員函數6、運算符重載要求保持其原來的操作數個數、結合性、優先級語法結構。7、通過關鍵字tem plate可以聲明模板,通過關鍵字class (或typen ame)指定函數模板的類型參數,有幾個類型參數就有幾個類型關鍵字。8列出C+中兩種用戶自定義的數據類型: _ 類單項選擇題(共20題,每題1分,共20分)1、下列關于C+標識符的命名不合法的是(C)C. A#bc int x=2;(D)C. i nt結構體 。A. PadB. name_12、若有
17、以下類型標識符定義: 則表達式w*x+y-z的結果類型是A. floatB. charcharw=a;與C#一樣D. _a12float y=;double z=;D. doubleD6、對重載函數形參的描述中,錯誤的是A.參數的個數可能不同B.參數的類型可能不同C.參數的順序可能不同D.參數的個數、類型、順序都相同,只是函數的返回值類型不同7、以下能正確定義數組并正確賦初值的語句是A. i nt N=5,bNN;C. i nt c2=1,2,3,4;8下列給字符數組進行的初始化中A. char s1=abcd;B. char s23=x,y,0;C. char s3=a,x,y,0;D. c
18、har s46=xyz,m np;9、通常的拷貝構造函數的參數是A.某個對象名DB. i nta2=1,3,4,5; D. int d32=1,2,3,4;,不正確的是DB.某個對象成員名C.某個對象的引用D.某個對象的指針名10、關于構造函數特點的描述中,錯誤的是A定義構造函數必須指出類型(構造函數特點是無返回類型)構造函數的名字與該類的類名相同 一個類中可定義0至多個構造函數 構造函數是一種成員函數下面程序的運行結果為A.B.C.D.11、#include int add(int a,intb); void main()extern int x,y;coutadd(x,y)a表示從鍵盤上讀
19、入一個_字符串_到數組a中。3、 若希望用一個已有對象來構造另一個同類型的對象,可以使用_拷貝構造函數_來 實現。4、 靜態成員(static)屬于_類_,而不屬于_任何一個對象_,它被同一個類的所 有對象共享 。6、重載運算符的含義必須清楚,不能有_二義性_。9、C+的I/O是以字節流的形式實現的,每個C+編譯系統都帶有一個面向對象的 輸入/輸出軟件包,這就是I/O流類庫。C+面向對象程序設計語言期末考試試卷case 9: i+=1; case 10: i+=1;case 11: i+=1;case 12: i+=1;#include void main(void)char c=0;cout
20、cn輸出的結果是_D_ _A)0B)語法錯7.設有類型說明:enum colorred,yellow=3,white,black;.選擇題(每題1分,共10分)在C+中,常量(和”C兩者A)完全不同 有二維字符數組_D_。1.2.A_B)存儲長度相同chars46=“zhangC)類型相同力力力 丄”gao”,”tangD)存儲值相同執行程序ng0ux?w:zy?z:x的結果為A)4B)3設a和b為整型變量,執行語句A)5,10 B)20,25B)tangC)gD)t_A_ _。D)1 b的值為_D 5,205.如果整型變量a,b,c的值分別為5,A)5B)int i=10;執行下列語句后,4i的值是C)2b=(a=2+3,a*4),a+5;后a和C)5,25D
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論