c++期末考試真題_第1頁(yè)
c++期末考試真題_第2頁(yè)
c++期末考試真題_第3頁(yè)
c++期末考試真題_第4頁(yè)
c++期末考試真題_第5頁(yè)
已閱讀5頁(yè),還剩6頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

填空題類是一組具有共同的_屬性___特征和行為特征的對(duì)象的抽象。在面向?qū)ο蟪绦蛟O(shè)計(jì)中,一個(gè)對(duì)象向另一個(gè)對(duì)象發(fā)出的請(qǐng)求被稱為_消息_。用class作關(guān)鍵字進(jìn)行類聲明,默認(rèn)的訪問屬性是private(私有的)_函數(shù)名重載是指同一作用域內(nèi)的多個(gè)函數(shù)使用相同的函數(shù)名,這些同名函數(shù)要從參數(shù)類型和參數(shù)個(gè)數(shù)進(jìn)行區(qū)分。TOC\o"1-5"\h\z構(gòu)造函數(shù)的作用是__在創(chuàng)建對(duì)象時(shí)對(duì)對(duì)象進(jìn)行初始化。多重繼承指一個(gè)派生類可以有__多個(gè)基類。保護(hù)繼承下,基類中所有公有成員在派生類中的訪問屬性是__保護(hù)的。假定要訪問一個(gè)對(duì)象指針p所指對(duì)象中的b成員,則表示方法___。9.若需要把一個(gè)函數(shù)“voidF定義為一個(gè)類AB的友元函數(shù),則應(yīng)在類AB的定義中加入一條語(yǔ)句:friendvoidF(AB&)_。lO.Static成員函數(shù)與普通成員函數(shù)的區(qū)別是—靜態(tài)成員函數(shù)沒有this指針。若要在程序文件中進(jìn)行標(biāo)準(zhǔn)輸入輸出操作,貝V必須在開始的#inelude命令中使用___iostream頭文件。12.1.關(guān)鍵字C說明對(duì)象或變量初始化后不會(huì)被修改。a.staticb.publicc.constd.inline如果調(diào)用帶有默認(rèn)參數(shù)的函數(shù)時(shí)缺少一個(gè)參數(shù),則B參數(shù)就作為這一參數(shù)。a.第一個(gè)b.最后一個(gè)c.中間一個(gè)d.以上都不是成員函數(shù)可聲明為靜態(tài)的,條件是它不訪問C類成員。a.靜態(tài)b.常數(shù)c.非靜態(tài)d.公共TOC\o"1-5"\h\z內(nèi)聯(lián)函數(shù)執(zhí)行起來比標(biāo)準(zhǔn)函數(shù)B。a.更慢b.更快c.次數(shù)更多d.以上都不是默認(rèn)參數(shù)的值由C提供。a.該函數(shù)b.調(diào)用程序c.上述二者d.以上都不是在C++中,混合類型表達(dá)式A。a.允許存在b.為一錯(cuò)誤c.從int到floatd.從float到int表達(dá)式long(intVar)也可表示為C。var=long;Var(long)c.(long)intVard.以上都不是靜態(tài)數(shù)據(jù)成員的生存期A。a.與整個(gè)程序相同b.不長(zhǎng)于類的生存期c.取決于創(chuàng)建的對(duì)象數(shù)d.以上都不是要讓一個(gè)類中的所有對(duì)象具有共同的數(shù)據(jù),請(qǐng)使用C。a.常數(shù)成員變量b.私有數(shù)據(jù)成員c.靜態(tài)數(shù)據(jù)成員d.以上都是1、C++是(C)。面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言B.面向過程的程序設(shè)計(jì)語(yǔ)言既支持面向?qū)ο蟮某绦蛟O(shè)計(jì)又支持面向過程的程序設(shè)計(jì)的混合型語(yǔ)言非結(jié)構(gòu)化的程序設(shè)計(jì)語(yǔ)言2、面向?qū)ο蟪绦蛟O(shè)計(jì)思想的主要特征中不包括(D)。A.封裝性B.多態(tài)性C.繼承性D.功能分解,逐步求精3、若定義:stringstr;當(dāng)語(yǔ)句cin?str;執(zhí)行時(shí),從鍵盤輸入:MicrosoftVisualStudio!所得的結(jié)果是str=(B)。MicrosoftVisualStudio!B.MicrosoftC.MicrosoftVisualD.MicrosoftVisualStudio4、考慮下面的函數(shù)原型聲明:voidtestDefaulParam(inta,intb=7,charz='*');下面函數(shù)調(diào)用中,不合法的是(C)。A.testDefaulParam(5);B.testDefaulParam(5,8);C.testDefaulParam(5,'#');D.testDefaulParam(0,0,'*');5、下列語(yǔ)句中,將函數(shù)intsum(intx,inty)正確重載的是(C)。A.floatsum(intx,inty);B.intsum(inta,intb);C.floatsum(floatx,floaty);D.doublesum(inty,intx);6、下列表示引用的方法中,(A)是正確的。已知:inta=1000;A.int&x=a;B.char&y;C.int&z=1000;D.float&t=&a;7、在一個(gè)函數(shù)中,要求通過函數(shù)來實(shí)現(xiàn)一種不太復(fù)雜的功能,并且要求加快執(zhí)行速度,選用(A)。A.內(nèi)聯(lián)函數(shù)B.重載函數(shù)C.遞歸調(diào)用D.嵌套調(diào)用8、下列有關(guān)C++類的說法中,不正確的是(D)。類是一種用戶自定義的數(shù)據(jù)類型只有類中的成員函數(shù)或類的友元函數(shù)才能存取類中的私有成員在類中,如果不做特別說明,所有成員的訪問權(quán)限均為私有的在類中,如果不做特別說明,所有成員的訪問權(quán)限均為公用的9、已知X類,則當(dāng)程序執(zhí)行到語(yǔ)句:Xarray[3];時(shí),調(diào)用了(D)次構(gòu)造函數(shù)。A.0B.1C.2D.310、下面說法中,正確的是(B)一個(gè)類只能定義一個(gè)構(gòu)造函數(shù),但可以定義多個(gè)析構(gòu)函數(shù)一個(gè)類只能定義一個(gè)析構(gòu)函數(shù),但可以定義多個(gè)構(gòu)造函數(shù)構(gòu)造函數(shù)與析構(gòu)函數(shù)同名,只要名字前加了一個(gè)求反符號(hào)(~)構(gòu)造函數(shù)可以指定返回類型,而析構(gòu)函數(shù)不能指定任何返回類型,即使是void類型也不可以12、下面描述中,表達(dá)錯(cuò)誤的是(B)公用繼承時(shí)基類中的public成員在派生類中仍是public的公用繼承時(shí)基類中的private成員在派生類中仍是private的公用繼承時(shí)基類中的protected成員在派生類中仍是protected的私有繼承時(shí)基類中的public成員在派生類中是private的14、下面(B)的敘述不符合賦值兼容規(guī)則。派生類的對(duì)象可以賦值給基類的對(duì)象基類的對(duì)象可以賦值給派生類的對(duì)象派生類的對(duì)象可以初始化基類的對(duì)象派生類的對(duì)象的地址可以賦值給指向基類的指針16、下面關(guān)于友元的描述中,錯(cuò)誤的是(D)。友元函數(shù)可以訪問該類的私有數(shù)據(jù)成員一個(gè)類的友元類中的成員函數(shù)都是這個(gè)類的友元函數(shù)友元可以提高程序的運(yùn)行效率類與類之間的友元關(guān)系可以繼承17、下列關(guān)于靜態(tài)數(shù)據(jù)成員的說法,不正確的是(C)。類中定義的公用靜態(tài)數(shù)據(jù)成員,可以通過類的對(duì)象來訪問類中定義的所有靜態(tài)數(shù)據(jù)成員,都必須在類外初始化靜態(tài)數(shù)據(jù)成員不是所有對(duì)象所共用的普通的成員函數(shù)可以直接訪問類中的靜態(tài)數(shù)據(jù)成員18、如果表達(dá)式++i*k中的“++”和“*”都是重載的友元運(yùn)算符,若采用運(yùn)算符函數(shù)調(diào)用格式,則表達(dá)式還可以表示為(B)。A.operator*++(),k)B.operator*(operator++(i),k)C.++().operator*(k)D.*(operator++(i))19、下面對(duì)模板的聲明,正確的是(C)。A.template<T>B.template<classT1,T2>C.template<classT1,classT2>D.template<classT1;classT2>20、下列的各類函數(shù)中,(C)不是類的成員函數(shù)A.構(gòu)造函數(shù)B.析構(gòu)函數(shù)C.友元函數(shù)D.復(fù)制構(gòu)造函數(shù)二、填空題(前14個(gè)空,每空1分,后3個(gè)空,每空2分,共20分)1、類和對(duì)象的關(guān)系可表述為:類是對(duì)象的抽象,而對(duì)象則是類的實(shí)例_。2、靜態(tài)成員函數(shù)沒有隱含的this指針,所以,在C++程序中,靜態(tài)成員函數(shù)主要用來訪問靜態(tài)數(shù)據(jù)成員,而不訪問非靜態(tài)成員。3、在圖1中,A,B,C,D,E,F(xiàn)均是類,其中屬于單繼承的派生類有E,屬于多繼承的派生類有D、F,類F的基類有A、B、C、D、E,類ATOC\o"1-5"\h\z的派生類有D、F。圖1類的繼承層次圖7、若要把voidfun()定義為類A的友元函數(shù),則應(yīng)在類A的定義中加入語(yǔ)句friendvoidfun(A&a)o8、列出C++中的兩種代碼復(fù)用方式:繼承和組合或模板。9、析構(gòu)函數(shù)的作用是在對(duì)象被系統(tǒng)釋放之前做一些內(nèi)存清理工作。10、假定A是一個(gè)類名,則該類的拷貝構(gòu)造函數(shù)的原型說明語(yǔ)句為:A(constA&)o11、后置自增運(yùn)算符“++”重載為類的成員函數(shù)(設(shè)類名為A)的形式為:Aoperator++(int)。一、單項(xiàng)選擇題(每小題2分,共40分)1、關(guān)于C++與C語(yǔ)言關(guān)系的描述中,(D)是錯(cuò)誤的。C語(yǔ)言是C++語(yǔ)言的一個(gè)子集B.C語(yǔ)言與C++語(yǔ)言是兼容的C.C++語(yǔ)言對(duì)C語(yǔ)言進(jìn)行了一些改進(jìn)D.C++語(yǔ)言和C語(yǔ)言都是面向?qū)ο蟮?、系統(tǒng)在調(diào)用重載函數(shù)時(shí)往往根據(jù)一些條件確定哪個(gè)重載函數(shù)被調(diào)用,在下列選項(xiàng)中,不能作為依據(jù)的是(A)。函數(shù)的返回值類型B.參數(shù)的類型C.函數(shù)名稱D.參數(shù)個(gè)數(shù)5、下列有關(guān)C++類的說法中,不正確的是(D)。類是一種用戶自定義的數(shù)據(jù)類型只有類中的成員函數(shù)或類的友元函數(shù)才能存取類中的私有成員在類中,如果不做特別說明,所有成員的訪問權(quán)限均為私有的在類中,如果不做特別說明,所有成員的訪問權(quán)限均為公用的7、有關(guān)析構(gòu)函數(shù)的說法,不正確的是(B)。析構(gòu)函數(shù)有且僅有一個(gè)B.析構(gòu)函數(shù)和構(gòu)造函數(shù)一樣可以有形參析構(gòu)函數(shù)的功能是在系統(tǒng)釋放對(duì)象之前作一些內(nèi)存清理工作析構(gòu)函數(shù)無任何函數(shù)類型8、類定義的內(nèi)容允許被其對(duì)象無限制地存取的是(C)。A.private部分B.protected部分C.public部分D.以上都不對(duì)10、運(yùn)用運(yùn)算符delete刪除一個(gè)動(dòng)態(tài)對(duì)象時(shí)(C)。系統(tǒng)首先為該動(dòng)態(tài)對(duì)象調(diào)用構(gòu)造函數(shù),再釋放其占用的內(nèi)存系統(tǒng)首先釋放該動(dòng)態(tài)對(duì)象占用的內(nèi)存,再為其調(diào)用構(gòu)造函數(shù)系統(tǒng)首先為該動(dòng)態(tài)對(duì)象調(diào)用析構(gòu)函數(shù),再釋放其占用的內(nèi)存系統(tǒng)首先釋放動(dòng)態(tài)對(duì)象占用的內(nèi)存,再為其調(diào)用析構(gòu)函數(shù)11、可以在類外用的形式訪問派生類對(duì)象p的基類成員a,其中&是(D)。私有繼承的公用成員B.公用繼承的私有成員C.公用繼承的保護(hù)成員D.公用繼承的公用成員12、在公用繼承方式下,有關(guān)派生類對(duì)象和基類對(duì)象的關(guān)系,不正確的敘述是(C。派生類的對(duì)象可以賦給基類的對(duì)象派生類的對(duì)象可以初始化基類的引用派生類的對(duì)象可以直接訪問基類中的成員派生類的對(duì)象的地址可以賦給指向基類的指針18、下列運(yùn)算符中,(C)運(yùn)算符在C++中不能被重載。A.&&B.[]C.::D.new19、模板的使用實(shí)際上是將類模板實(shí)例化成一個(gè)(C)。A.函數(shù)B.對(duì)象C.類D.抽象類20、假定MyClass為一個(gè)類,則該類的拷貝構(gòu)造函數(shù)的聲明語(yǔ)句為(C)。A.MyClass(MyClassx)B.MyClass&(MyClassx)C.MyClass(MyClass&x)D.MyClass(MyClass*x)二、填空題(前16個(gè)空,每空1分,后2個(gè)空,每空2分,共20分)1、類和對(duì)象的關(guān)系可表述為:類是對(duì)象的抽象,而對(duì)象則是類的實(shí)例。2、在C++中,三種繼承方式的說明符號(hào)為public、prvate和_protected,如果不加說明,則默認(rèn)的繼承方式為private__。5、類的靜態(tài)成員分為靜態(tài)數(shù)據(jù)成員和靜態(tài)成員函數(shù)。6、運(yùn)算符重載要求保持其原來的操作數(shù)個(gè)數(shù)、結(jié)合性、優(yōu)先級(jí)和語(yǔ)法結(jié)構(gòu)。7、通過關(guān)鍵字template可以聲明模板,通過關(guān)鍵字class(或typename)指定函數(shù)模板的類型參數(shù),有幾個(gè)類型參數(shù)就有幾個(gè)類型關(guān)鍵字。8、列出C++中兩種用戶自定義的數(shù)據(jù)類型:類、結(jié)構(gòu)體。單項(xiàng)選擇題(共20題,每題1分,共20分)1、下列關(guān)于C++標(biāo)識(shí)符的命名不合法的是(C)與C#一樣A.PadB.name_1C.A#bcD._a122、若有以下類型標(biāo)識(shí)符定義:intx=2;charw='a';floaty=;doublez=;則表達(dá)式w*x+y-z的結(jié)果類型是(D)A.floatB.charC.intD.double6、對(duì)重載函數(shù)形參的描述中,錯(cuò)誤的是D參數(shù)的個(gè)數(shù)可能不同參數(shù)的類型可能不同參數(shù)的順序可能不同參數(shù)的個(gè)數(shù)、類型、順序都相同,只是函數(shù)的返回值類型不同7、以下能正確定義數(shù)組并正確賦初值的語(yǔ)句是DA.intN=5,b[N][N];B.inta[2]={{1},{3},{4},{5}};C.intc[2][]={{1,2},{3,4}};D.intd[3][2]={{1,2},{3,4}};8、下列給字符數(shù)組進(jìn)行的初始化中,不正確的是Dchars1[]="abcd";chars2[3]={'x','y','\0'};chars3[]={'a','x','y','\0'};chars4[6]={"xyz","mnp"};

9、通常的拷貝構(gòu)造函數(shù)的參數(shù)是CA.某個(gè)對(duì)象名某個(gè)對(duì)象成員名C.某個(gè)對(duì)象的引用D.某個(gè)對(duì)象的指針名10、關(guān)于構(gòu)造函數(shù)特點(diǎn)的描述中,錯(cuò)誤的是A定義構(gòu)造函數(shù)必須指出類型(構(gòu)造函數(shù)特點(diǎn)是無返回類型)構(gòu)造函數(shù)的名字與該類的類名相同一個(gè)類中可定義0至多個(gè)構(gòu)造函數(shù)構(gòu)造函數(shù)是一種成員函數(shù)11、下面程序的運(yùn)行結(jié)果為C#include<iostream>intadd(inta,intb);voidmain(){externintx,y;cout<<add(x,y)<<endl;}intx=20,y=5;intadd(inta,intb){ints=a+b;returns;D.D.編譯會(huì)提示出錯(cuò)信息A.20B.5C.2513、關(guān)于友元函數(shù)的描述中,錯(cuò)誤的是B友元函數(shù)不是成員函數(shù)友元函數(shù)只能訪問類中私有成員友元函數(shù)破壞隱藏性,盡量少用D.友元函數(shù)說明在類體內(nèi),使用關(guān)鍵字friend14、如果有intx,*p;floaty,*q;則下面操作正確的是CA.p=xB.p=qC.p=&xD.p=&y16、若數(shù)組名作實(shí)參而指針變量作形參,函數(shù)調(diào)用時(shí)實(shí)參傳給形參的是D數(shù)組的長(zhǎng)度數(shù)組第一個(gè)元素的值數(shù)組所有元素的值數(shù)組第一個(gè)元素的地址17、對(duì)于動(dòng)態(tài)分配內(nèi)存空間描述正確的是DA.使用new運(yùn)算符分配的內(nèi)存空間的長(zhǎng)度必需是常量B.delete運(yùn)算符可以釋放動(dòng)態(tài)的存儲(chǔ)空間和靜態(tài)的存儲(chǔ)空間由new分配的內(nèi)存空間是不連續(xù)的D?delete運(yùn)算符只能釋放由new分配的動(dòng)態(tài)存儲(chǔ)空間18、能夠釋放對(duì)象所占資源的是()A}}A?析構(gòu)函數(shù)B.數(shù)據(jù)成員C.構(gòu)造函數(shù)D.靜態(tài)成員函數(shù)20、在C++中串流類是在頭文件中定義的,下列不屬于串流類的是)CA?strstreamB?ostrstreamC?ofstreamD?istrstream二、填空題(共9題16空,每空1分,共16分)1、函數(shù)重載時(shí),編譯系統(tǒng)會(huì)根據(jù)__形參的類型__或__形參的個(gè)數(shù)__來區(qū)分。與返回值類型無關(guān)2、若有chara[80];則cin?a表示從鍵盤上讀入一個(gè)—字符串—到數(shù)組a中。3、若希望用一個(gè)已有對(duì)象來構(gòu)造另一個(gè)同類型的對(duì)象,可以使用__拷貝構(gòu)造函數(shù)__來實(shí)現(xiàn)。4、靜態(tài)成員(static)屬于類,而不屬于__任何一個(gè)對(duì)象—,它被同一個(gè)類的所有對(duì)象共享。6、重載運(yùn)算符的含義必須清楚,不能有__二義性__。9、C++的I/O是以字節(jié)流的形式實(shí)現(xiàn)的,每個(gè)C++編譯系統(tǒng)都帶有一個(gè)面向?qū)ο蟮妮斎?輸出軟件包,這就是I/O流類庫(kù)。C++面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言期末考試試卷一.選擇題(每題1分,共10分)TOC\o"1-5"\h\z在C++中,常量'C'和”C”兩者A—。A)完全不同B)存儲(chǔ)長(zhǎng)度相同C)類型相同D)存儲(chǔ)值相同有二維字符數(shù)組chars[4][6]={“zhang”,”gao”,”tang”,”wang”},執(zhí)行程序cout?*s[2],屏幕上顯示__D。A)gaoB)tangC)gD)t若w=l,x=2,y=3,z=4,則條件表達(dá)式w>x?w:z>y?z:x的結(jié)果為A。A)4B)3C)2D)1設(shè)a和b為整型變量,執(zhí)行語(yǔ)句b=(a=2+3,a*4),a+5;后a和b的值為_D。A)5,10B)20,25C)5,25D)5,20如果整型變量a,b,c的值分別為5,4,3,則語(yǔ)句if(a>=b>=c)c++;執(zhí)行后c的值是_C。A)5B)4C)3D)2inti=10;執(zhí)行下列語(yǔ)句后,i的值是_D。{case9:i+=1;case10:i+=1;case11:i+=1;case12:i+=1;}A)10B)11C)12D)13執(zhí)行以下程序:#include<iostream>voidmain(void){charc=0;cout<<c<<'\n'TOC\o"1-5"\h\

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論