首頁 - 網(wǎng)校 - 萬題庫 - 美好明天 - 直播 - 導(dǎo)航
您現(xiàn)在的位置: 考試吧 > 計算機等級考試 > 計算機二級考試 > C加加 > 模擬試題 > 正文

2018年9月計算機二級C++考試沖刺必做題及答案(2)

來源:考試吧 2018-09-14 10:07:52 要考試,上考試吧! 萬題庫
“2018年9月計算機二級C++考試沖刺必做題及答案(2)”供考生參考。更多計算機等級考試模擬試題信息請訪問考試吧計算機等級考試網(wǎng)。
第 1 頁:選擇題
第 2 頁:基本操作題
第 3 頁:簡單應(yīng)用題

  點擊查看:2018年9月計算機二級C++考試沖刺必做題及答案匯總

  一、選擇題(每小題1分,共40分)

  1 [單選題] 有如下程序:

2018年9月計算機二級C++考試沖刺必做題及答案(2)

  運行后的輸出結(jié)果是( )。

  A.3

  B.5

  C.6

  D.編譯出錯

  參考答案:C

  參考解析:

  題意中,add()函數(shù)接收3個double類型的參數(shù),最后一個形參e具有默認(rèn)值1,函數(shù)將三個參數(shù)相加,返回相加的結(jié)果;main()函數(shù)中,調(diào)用add()函數(shù),傳人兩個參數(shù),所以形參c使用默認(rèn)值1,對應(yīng)參數(shù)的值為:2,3,1,函數(shù)將a、b、c轉(zhuǎn)換為double類型后,相加,并將結(jié)果6.0作為函數(shù)值返回,返回值轉(zhuǎn)換為int賦給result,最終輸出result的值。本題答案為C選項。

  2 [單選題] 下列關(guān)于類定義的說法中,正確的是( )。

  A.類定義中包括數(shù)據(jù)成員和函數(shù)成員的聲明

  B.類成員的缺省訪問權(quán)限是保護的

  C.數(shù)據(jù)成員必須被聲明為私有的

  D.成員函數(shù)只能在類體外進行定義

  參考答案:A

  參考解析:

  類的成員的缺省訪問權(quán)限是私有的,數(shù)據(jù)成員可以是私有,可以是公用的,也可以是受保護的。類的成員函數(shù)可以在類內(nèi)定義。

  3 [單選題] 必須用一對大括號括起來的程序段是( )。

  A.switch語句中的case標(biāo)號語句

  B.if語句的分支

  C.循環(huán)語句的循環(huán)體

  D.函數(shù)的函數(shù)體

  參考答案:D

  參考解析:

  本題考查C++基本控制結(jié)構(gòu),A、B、C三個選項中的大括號不是必須的,而D選項中的函數(shù)體必須使用大括號。

  4 [單選題] 計算數(shù)列第n項的函數(shù)定義如下:

2018年9月計算機二級C++考試沖刺必做題及答案(2)

  若執(zhí)行函數(shù)調(diào)用表達式fa(4)時,返回的函數(shù)值為( )。

  A.53

  B.17

  C.23

  D.49

  參考答案:A

  參考解析:

  題意中fa()函數(shù)是一個遞歸函數(shù),當(dāng)參數(shù)n大于1時,函數(shù)返回值為3*fa(n-1)+2,當(dāng)n等于1時,函數(shù)返回值為1,所以fa(4)=3*fa(3)+2=3*(3$fa(2)+2)+2=3*(3*(3*fa(1)+2)+2)+2=3*(3*(3+2)+2)+2=53。本題答案為A選項。

  5 [單選題] 有如下程序:

2018年9月計算機二級C++考試沖刺必做題及答案(2)

  運行時的輸出結(jié)果是( )。

  A.Book:C++

  B.Book:Unknown

  C.Unknown:C++

  D.Unknown:Unknown

  參考答案:A

  參考解析:

  C++中,多態(tài)調(diào)用必須滿足兩個條件:被調(diào)用的成員函數(shù)是虛函數(shù);必須通過基類類型的引用或指針進行函數(shù)調(diào)用。 題意的main()函數(shù)中首先定義一個Book類對象,對象名為book,在構(gòu)造book對象時,程序過程如下:首先調(diào)用Book類的構(gòu)造函數(shù),傳人參數(shù)“C++”,在構(gòu)造函數(shù)執(zhí)行函數(shù)體前,再調(diào)用基類Publication的默認(rèn)構(gòu)造函數(shù):傳入字符串“C++”,基類構(gòu)造函數(shù)在成員初始化列表中,使用傳人的參數(shù)“C++”為name賦值;此時繼承于基類的成員:name存放字符串“C++”。

  然后main()函數(shù)調(diào)用showPublication()函數(shù),傳人book對象:showPublication()函數(shù)接收Publication類對象的引用p,然后調(diào)用p.getType()和p.getName()輸出。由于getType()成員函數(shù)屬于虛函數(shù),p屬于基類對象的引用,所以通過p調(diào)用getType()函數(shù)滿足多態(tài)調(diào)用,執(zhí)行p實際引用對象類型的getType(),即Book類的getType(),輸出:“Book”;而getName()不是成員函數(shù),所以不滿足多態(tài)調(diào)用,執(zhí)行基類的成員函數(shù)getName(),輸出name:“c++”。綜上,程序輸出:Book:C++。本題答案為A選項。

  6 [單選題] 有如下程序:

  

2018年9月計算機二級C++考試沖刺必做題及答案(2)


  執(zhí)行這個程序的輸出結(jié)果是( )。

  A.375

  B.357

  C.0375

  D.0357

  參考答案:C

  參考解析:

  本題考查派生類的構(gòu)造函數(shù)和析構(gòu)函數(shù),在定義一個派生類的對象時,先調(diào)用基類的構(gòu)造函數(shù),然后再執(zhí)行派生類的構(gòu)造函數(shù),對象釋放時,先執(zhí)行派生類的析構(gòu)函數(shù),再執(zhí)行基類的析構(gòu)函數(shù)。本題中定義了一個對象d1,先執(zhí)行基類的構(gòu)造函數(shù)輸出0,再執(zhí)行派生類的構(gòu)造函數(shù)輸出3,然后定義了一個對象d2(5,7),其中需要調(diào)用基類的構(gòu)造函數(shù)輸出7,最后輸出5,所以答案為C。

  7 [單選題] 軟件按功能可以分為應(yīng)用軟件、系統(tǒng)軟件和支撐軟件(或工具軟件)。下面屬于應(yīng)用軟件的是( )。

  A.學(xué)生成績管理系統(tǒng)

  B.C語言編譯程序

  C.UNIX操作系統(tǒng)

  D.數(shù)據(jù)庫管理系統(tǒng)

  參考答案:A

  參考解析:

  軟件按功能可以分為:應(yīng)用軟件、系統(tǒng)軟件、支撐軟件。操作系統(tǒng)、編譯程序、匯編程序、網(wǎng)絡(luò)軟件、數(shù)據(jù)庫管理系統(tǒng)都屬于系統(tǒng)軟件。所以B、C、D都是系統(tǒng)軟件,只有A是應(yīng)用軟件。

  8 [單選題] 下列程序的運行結(jié)果是( )。

2018年9月計算機二級C++考試沖刺必做題及答案(2)

  A.00

  B.23

  C.34

  D.25

  參考答案:B

  參考解析:

  本題考查的是對構(gòu)造函數(shù)的掌握,另外“++”運算符是右結(jié)合的,所以在進行輸出的時候都是先把原來的輸出后再自加1。

  9 [單選題] 關(guān)系數(shù)據(jù)模型的三個組成部分中不包括( )。

  A.關(guān)系的完整性約束

  B.關(guān)系的數(shù)據(jù)操縱

  C.關(guān)系的數(shù)據(jù)結(jié)構(gòu)

  D.關(guān)系的并發(fā)控制

  參考答案:D

  參考解析:

  關(guān)系數(shù)據(jù)模型的三個組成部分:數(shù)據(jù)結(jié)構(gòu),操作集合(數(shù)據(jù)操縱),完整性約束。故本題答案為D選項。

  10 [單選題] 關(guān)于函數(shù)重載,下列敘述中錯誤的是( )。

  A.重載函數(shù)的函數(shù)名必須相同

  B.重載函數(shù)必須在參數(shù)個數(shù)或類型上有所不同

  C.重載函數(shù)的返回值類型必須相同

  D.重載函數(shù)的函數(shù)體可以有所不同

  參考答案:C

  參考解析:

  所謂函數(shù)重載是指同一個函數(shù)名可以對應(yīng)多個函數(shù)的實現(xiàn)。每種實現(xiàn)對應(yīng)一個函數(shù)體,這些函數(shù)的名字相同,其參數(shù)類型或個數(shù)不同,但不能出現(xiàn)函數(shù)返回值類型不同而參數(shù)類型和個數(shù)完全相同的重載。所以本題答案為C。

  11 [單選題] 有如下程序:

2018年9月計算機二級C++考試沖刺必做題及答案(2)

  運行后的輸出結(jié)果是( )。

  A.2351

  B.2531

  C.5354

  D.5534

  參考答案:B

  參考解析:

  main()函數(shù)中調(diào)用了B的構(gòu)造函數(shù),參數(shù)為5,接下來B類對象b的構(gòu)造過程如下:①調(diào)用基類A的默認(rèn)構(gòu)造函數(shù),構(gòu)造對象b的基類部分:初始化m_i為2。②按照B類中成員的定義順序,使用成員初始化列表初始化兩個A類成員:首先執(zhí)行m_a1(m_i+1),m_i為基類A中的成員,此時值為2,調(diào)用A類的默認(rèn)構(gòu)造函數(shù),初始化m_a1.m_i為3;然后執(zhí)行m_a2(n),調(diào)用A類的默認(rèn)構(gòu)造函數(shù),初始化m_a2.m_i為5。接著main()執(zhí)行return語句,此時對象b需要調(diào)用析構(gòu)函數(shù)進行釋放,釋放過程如下:①首先運行B類的析構(gòu)函數(shù)-B(),輸出m_i的值為2,然后將m_i自減1,使得m_i的值為1。②按照8類中成員定義順序的反順序,首先調(diào)用m_a2的析構(gòu)函數(shù)~A(),釋放對象m a2,輸出m_a2.m_i的值5;再調(diào)用m_a1的析構(gòu)函數(shù)~A(),釋放對象m_a1,輸出m_a1.m_i的值3。③最后調(diào)用基類A的析構(gòu)函數(shù)-A(),釋放b對象中的基類部分,輸出m_i的值1。 由上分析,程序運行結(jié)果為:2531。故本題答案為B選項。

  12 [單選題] 有如下程序段:

2018年9月計算機二級C++考試沖刺必做題及答案(2)

  上述程序使得derived對象中的動態(tài)內(nèi)存空間有可能不被釋放,有內(nèi)存泄漏風(fēng)險,原因是( )。

  A.base類是抽象類

  B.derived類的析構(gòu)函數(shù)沒有釋放基類的動態(tài)內(nèi)存

  C.base類的析構(gòu)函數(shù)不是虛函數(shù)

  D.derived類的resoulce與公有繼承得到的resource同名

  參考答案:C

  參考解析:

  基類base中的數(shù)據(jù)成員resource為整型指針變量,派生類derived中的數(shù)據(jù)成員resource與基類base中的同名,但類型為浮點型指針變量,基類base中構(gòu)造函數(shù)使用new為resource(整型指針)分配了內(nèi)存空間,在析構(gòu)函數(shù)中釋放;派生類derived的構(gòu)造函數(shù)在成員初始化類表中調(diào)用base的構(gòu)造函數(shù)構(gòu)造對象的基類部分,然后在構(gòu)造函數(shù)體內(nèi)使用new為resource(浮點型指針)分配了內(nèi)存空間,在析構(gòu)函數(shù)中釋放浮點型resource指針;由于基類base中的析構(gòu)函數(shù)未定義為虛函數(shù),所以派生類derived中的析構(gòu)函數(shù)在被調(diào)用時,不會再調(diào)用基類base中的析構(gòu)函數(shù),導(dǎo)致基類base中的整型指針變量resource無法釋放,造成內(nèi)存泄漏。故本題答案為C選項。

  13 [單選題] 下列關(guān)于抽象類的敘述中,錯誤的是( )。

  A.不能定義抽象類對象

  B.抽象類中一定包含純虛函數(shù)

  C.抽象類的派生類一定不是抽象類

  D.抽象類的構(gòu)造函可以是protected函數(shù)

  參考答案:C

  參考解析:

  含有一個或多個純虛函數(shù)的類是抽象類,不能創(chuàng)建抽象類的對象,選項A、B正確;由于無法創(chuàng)建(也不需要創(chuàng)建)抽象類的對象,所以抽象類的構(gòu)造函數(shù)可以是protected函數(shù),選項D正確;抽象類的派生類,如果也包含純虛函數(shù),那么該派生類也是抽象類,選項C錯誤。故本題答案為C選項。

  14 [單選題] 一個工作人員可以使用多臺計算機,而一臺計算機可被多個人使用,則實體工作人員與實體計算機之間的聯(lián)系是( )。

  A.一對一

  B.一對多

  C.多對多

  D.多對一

  參考答案:C

  參考解析:

  因為一個人可以操作多個計算機,而一臺計算機又可以被多個人使用,所以兩個實體之間是多對多的關(guān)系。

  15 [單選題] 有如下程序:

2018年9月計算機二級C++考試沖刺必做題及答案(2)

  執(zhí)行這個程序的輸出結(jié)果是( )。

  A.1B

  B.1D

  C.2B

  D.2D

  參考答案:B

  參考解析:

  在某基類中聲明為virtual并在一個或多個派生類中被重新定義的成員函數(shù),本題中定義了一個指向派生類對象的基類指針ptr,執(zhí)行ptr->output后,會執(zhí)行基類的output函數(shù),輸出1,由于Print是虛函數(shù),所以ptr->Print()會執(zhí)行派生類的Print,即輸出D,所以本題答案為B。

  16 [單選題] 層次型、網(wǎng)狀型和關(guān)系型數(shù)據(jù)庫劃分原則是( )。

  A.記錄長度

  B.文件的大小

  C.聯(lián)系的復(fù)雜程度

  D.數(shù)據(jù)之間的聯(lián)系方式

  參考答案:D

  參考解析:

  層次模型的基本結(jié)構(gòu)是樹形結(jié)構(gòu),網(wǎng)狀模型是一個不加任何條件限制的無向圖,關(guān)系模型采用二維表來表示,所以三種數(shù)據(jù)庫的劃分原則是數(shù)據(jù)之間的聯(lián)系方式。

  17 [單選題] C++中的模板包括( )。

  A.對象模板和函數(shù)模板

  B.對象模板和類模板

  C.函數(shù)模板和類模板

  D.變量模板和對象模板

  參考答案:C

  18 [單選題] 現(xiàn)有表示患者和醫(yī)療的關(guān)系如下:P(P#,Pn,Pg,By),其中P#為患者編號,Pn為患者姓名,Pg為性別,By為出生日期,Tr(P#,D#,Date,Rt),其中D#為醫(yī)生編號,Date為就診日期,Rt為診斷結(jié)果。檢索在1號醫(yī)生處就診的病人姓名的表達式是( )。

2018年9月計算機二級C++考試沖刺必做題及答案(2)

  參考答案:A

  參考解析:

  π表示投影運算,針對屬性;σ表示選擇運算,針對元組;▷◁表示自然連接。首先在Tr表中選擇D#為1的記錄σD#=1(Tr),并檢索這些記錄中患者的編號πp#(σD#=1(Tr)),檢索結(jié)果與表P進行自然連接生成中間表計πP#(σD#=1(Tr))▷◁P,最后在中間表中檢索患者的姓名πPn(πP#(σD#=1(Tr))▷◁P)。故本題答案為A選項。

  19 [單選題] 下列選項中不屬于結(jié)構(gòu)化程序設(shè)計原則的是( )。

  A.可封裝

  B.自頂向下

  C.模塊化

  D.逐步求精

  參考答案:A

  參考解析:

  結(jié)構(gòu)化程序設(shè)計的思想包括:自頂向下、逐步求精、模塊化、限制使用goto語句,所以選擇A。

  20 [單選題] 已知函數(shù)模板定義如下:

2018年9月計算機二級C++考試沖刺必做題及答案(2)

  不能由該函數(shù)模板得到的函數(shù)實例是( )。

  A.int min(int,int)

  B.char min(char,char)

  C.double min(int,double)

  D.double min(double,double)

  參考答案:C

  參考解析:

  題意中的模板函數(shù)min()接收兩個參數(shù),參數(shù)類型都是T,返回一個T類型的值,所以min()函數(shù)的參數(shù)、返回值都必須是同一類型,由此可知選項A、B、D可正確得到函數(shù)實例,選項C不可以。故本題答案為C選項。

  21 [單選題] 某二叉樹共有7個結(jié)點,其中葉子結(jié)點只有1個,則該二叉樹的深度為(假設(shè)根結(jié)點在第1層)( )。

  A.3

  B.4

  C.6

  D.7

  參考答案:D

  參考解析:

  根據(jù)二叉樹的基本性質(zhì)3:在任意一棵二叉樹中,度為0的葉子結(jié)點總比度為2的結(jié)點多一個,所以本題中度為2的結(jié)點為1-1=0個,所以可以知道本題目中的二叉樹的每一個結(jié)點都有一個分支,所以共7個結(jié)點共7層,即度為7。

  22 [單選題] 如下函數(shù)模板:

  templateT square(T x){return x*x;}

  其中T是( )。

  A.函數(shù)形參

  B.函數(shù)實參

  C.模板形參

  D.模板實參

  參考答案:C

  參考解析:

  本題考查模板函數(shù)的基本概念,根據(jù)模板函數(shù)的定義,T是模板形參,所以答案為C。

  23 [單選題] 下列運算符中,可以重載為非成員函數(shù)的是( )。

  A.=

  B.>>.

  C.[]

  D.( )

  參考答案:B

  參考解析:

  賦值操作符=、下標(biāo)操作符[]和箭頭操作符->必須定義為類成員函數(shù),而輸入輸出操作符可以定義為非成員函數(shù)。故本題答案為B選項。

  24 [單選題] 有如下程序:

2018年9月計算機二級C++考試沖刺必做題及答案(2)

  運行后的輸出結(jié)果是( )。

  A.5:4 20.52

  B.5:4 20:52

  C.5,4 20,52

  D.5,4 20:52

  參考答案:A

  參考解析:

  c++中,eonst對象只能使用eonst成員函數(shù),非eonst對象可以使用任一成員;題意中兩個print()函數(shù)屬于基于cons|的重載函數(shù),所以對于非eonst對象a,調(diào)用非eonst的成員函數(shù)print(),輸出:5:4;對于cons|對象b,輸出:20,52。故本題答案為A選項。

  25 [單選題] 下列有關(guān)指針的操作中,正確的是( )。

  A.int a=10;void*ptr=&a;cout<<*(ptr);

  B.int * ptr=new int[10];delete ptr;

  C.i.t Array[4];*(Array+3)=10;

  D.int*ptr=new int*[10];

  參考答案:C

  參考解析:

  變量a是整型,所以地址為整型指針,不能賦給void*類型,選項A錯誤;使用new分配數(shù)組空間時,必須使用delete[]來釋放數(shù)組空間,選項B錯誤;new int$[10]是分配了l0個整型指針數(shù)組,數(shù)組的每個元素都是整型指針,它無法賦給整型指針變量ptr,選項D錯誤。本題答案為C選項。

  26 [單選題] 有如下程序:

2018年9月計算機二級C++考試沖刺必做題及答案(2)

  執(zhí)行這個程序的輸出結(jié)果是( )。

  A.CCCC

  B.CCC

  C.CC

  D.C

  參考答案:B

  參考解析:

  本題考查類的析構(gòu)函數(shù),題目中定義了類的一個對象a,對象指針*b,對象數(shù)組d[2],當(dāng)程序執(zhí)行完后,析構(gòu)函數(shù)執(zhí)行了3次,輸出“CCC”,對象指針不會執(zhí)行析構(gòu)函數(shù)。所以本題答案為B。

  27 [單選題] 下列符號中能夠作為C++標(biāo)識符的是( )。

  A.const

  B.2a

  C._shape

  D.-count

  參考答案:C

  參考解析:

  本題考查C++標(biāo)識符的命名規(guī)則,其規(guī)則有如下幾點:①所有標(biāo)識符必須由字母、數(shù)字或下畫線組成,且必須由字母或下畫線開頭;②所有標(biāo)識符不能使用C++已有的關(guān)鍵字;③大、小寫字母表示不同意義,即代表不同的標(biāo)識符。選項A是關(guān)鍵字,選項B不能以數(shù)字開頭,選項D包含了字符”-”,且不能以此字符開頭。故答案為C。

  28 [單選題] 下列關(guān)于運算符函數(shù)的描述中,錯誤的是( )。

  A.運算符函數(shù)的名稱總是以operator為前綴

  B.運算符函數(shù)的參數(shù)可以是對象

  C.運算符函數(shù)只能定義為類的成員函數(shù)

  D.在表達式中使用重載的運算符相當(dāng)于調(diào)用運算符重載函數(shù)

  參考答案:C

  參考解析:

  運算符函數(shù)可以定義為類的友元函數(shù)。所以C選項錯誤。

  29 [單選題] 如果派生類以protected方式繼承基類,則原基類的protected成員和public成員在派生類中的訪問屬性分別是( )。

  A.public和public

  B.public和protected

  C.protected和public

  D.protected和protected

  參考答案:D

  參考解析:

  本題考查保護繼承中派生類對基類的訪問屬性,在受保護繼承中,基類的公用成員和保護成員在派生類中成了保護成員,其私有成員仍為基類私有,所以本題答案為D。

  30 [單選題] 當(dāng)一個派生類私有繼承一個基類時,基類中的所有公有成員和保護成員成為派生類的( )。

  A.公有成員

  B.私有成員

  C.保護成員

  D.友元

  參考答案:B

  參考解析:

  C++中,對于公有繼承,基類成員保持自己的訪問級別:基類的public成員為派生類的public成員,基類的protected成員為派生類的proteeted成員,基類的private成員對派生類不可見,所以:在公有繼承中,基類中的公有成員對派生類對象可見,基類中的私有成員對派生類對象不可見;對于私有繼承,基類的public和protected成員在派生類中為private成員,基類的private成員對派生類不可見,選項B正確。本題答案為B選項。

  31 [單選題] 有如下枚舉類型定義:

  enum DAY{SUN,MON=10,TUE,WED,THU,F(xiàn)RI=20,SAT};

  執(zhí)行下列程序段

2018年9月計算機二級C++考試沖刺必做題及答案(2)

  輸出字符'a'的個數(shù)是( )。

  A.13

  B.16

  C.19

  D.22

  參考答案:A

  參考解析:

  枚舉類型中,如果當(dāng)前枚舉成員的值顯示初始化,那么后一個枚舉成員的值比當(dāng)前枚舉成員的值大1,所以枚舉類型DAY中,SUN的值為0,NON的值顯示為10,TUE的值為11,WED的值為12,THU的值為13,F(xiàn)R1的值顯示初始化為20,SAT的值為21,所以for循環(huán)會執(zhí)行13次,輸出13個字符'a'。本題答案為A選項。

  32 [單選題] 要建立文件流并打開當(dāng)前目錄下的文件file.dat用于輸入,下列語句中錯誤的是( )。

  A.ifstream fin=ifstream.open(”file.dat”);

  B.ifstream*fin=new ifstream(”file.dat”);

  C.ifstream fin;fin.open(”file.dat”);

  D.ifstream*fin=new ifstream( );fin->open(”file.dat”);

  參考答案:A

  參考解析:

  本題考查對文件流輸入的操作,可以調(diào)用文件流的成員函數(shù)pen,一般形式如下:文件流對象.open(磁盤文件名,輸入/輸出方式)。根據(jù)以上格式,可以判斷A選項錯誤。

  33 [單選題] 下列有關(guān)繼承和派生的敘述中,正確的是( )。

  A.派生類不能訪問基類的保護成員

  B.作為虛基類的類不能被實例化

  C.派生類應(yīng)當(dāng)向基類的構(gòu)造函數(shù)傳遞參數(shù)

  D.虛函數(shù)必須在派生類中重新實現(xiàn)

  參考答案:C

  參考解析:

  派生類可以訪問基類的保護成員,而不能訪問基類的私有成員。作為虛基類的類可以被實例化。虛函數(shù)如果沒有派生類中重新實現(xiàn),那么仍然使用基類的成員函數(shù)。

  34 [單選題] 已知Value是一個類,value是Value的一個對象。下列以非成員函數(shù)形式重載的運算符函數(shù)原型中,正確的是( )。

  A.Value operator+(Value v,int i);

  B.Value operator+(Value v=value,int i);

  C.Value operator+(Value v,int i=0);

  D.Value operator+(Value v=value,int i=0);

  參考答案:A

  參考解析:

  本題考查運算符重載,其中重載運算符的函數(shù)不能有默認(rèn)的參數(shù),所以本題答案為A。

  35 [單選題] 下列關(guān)于虛函數(shù)的說明中,正確的是( )。

  A.從虛基類繼承的函數(shù)都是虛函數(shù)

  B.虛函數(shù)不得是靜態(tài)成員函數(shù)

  C.只能通過指針或引用調(diào)用虛函數(shù)

  D.抽象類中的成員函數(shù)都是虛函數(shù)

  參考答案:B

  參考解析:

  在某基類中聲明為virtual并在一個或多個派生類中被重新定義的成員函數(shù)。虛函數(shù)必須是基類的非靜態(tài)成員函數(shù),其訪問權(quán)限可以是protected或public。如果一個類包含了純虛函數(shù),稱此類為抽象類。所以本題答案為B。

  36 [單選題] 有如下程序:

2018年9月計算機二級C++考試沖刺必做題及答案(2)

  執(zhí)行這個程序的輸出結(jié)果是( )。

  A.1111

  B.1211

  C.1112

  D.1212

  參考答案:C

  參考解析:

  本題主要考察虛函數(shù)。虛函數(shù)指在某基類中聲明為viltual并在一個或多個派生類中被重新定義的成員函數(shù),本題中定義類GA的對象a,執(zhí)行show(a)、display(a),輸出11,定義了類GB的對象b,執(zhí)行show(b),仍然輸出1,display(b)執(zhí)行會調(diào)用派生類的f函數(shù),因為f函數(shù)為虛函數(shù),輸出2,所以本題答案為C。

  37 [單選題] 一個教師可講授多門課程,一門課程可由多個教師講授。則實體教師和課程間的聯(lián)系是( )。

  A.1:1聯(lián)系

  B.1:m聯(lián)系

  C.m:1聯(lián)系

  D.m:n聯(lián)系

  參考答案:D

  參考解析:

  因為一個教師可講授多門課程,而一門課程又能由多個老師講授,所以他們之間是多對多的關(guān)系,可以表示為m:n。

  38 [單選題] 下列關(guān)于類模板的模板參數(shù)的敘述中,錯誤的是( )。

  A.模板參數(shù)可以作為數(shù)據(jù)成員的類型

  B.模板參數(shù)可以作為成員函數(shù)的返回類型

  C.模板參數(shù)可以作為成員函數(shù)的參數(shù)類型

  D.模板參數(shù)不能作為成員函數(shù)的局部變量的類型

  參考答案:D

  參考解析:

  本題考查類模板的概念和定義,模板參數(shù)可以作為成員函數(shù)的局部變量的類型。

  39 [單選題] 下面對于友元函數(shù)描述正確的是( )。

  A.友元函數(shù)的實現(xiàn)必須在類的內(nèi)部定義

  B.友元函數(shù)是類的成員函數(shù)

  C.友元函數(shù)破壞了類的封裝性和隱藏性

  D.友元函數(shù)不能訪問類的私有成員

  參考答案:C

  參考解析:

  友元函數(shù)的定義既可以在類內(nèi)部進行,也可以在類外部進行。它提高了程序的運行效率,但破壞了類的封裝性和隱藏性,使得類的非成員函數(shù)可以訪問類的私有成員。

  40 [單選題] 有如下程序:

2018年9月計算機二級C++考試沖刺必做題及答案(2)

  已知其執(zhí)行后的輸出結(jié)果為:

  Base::fun

  Derived::fun

  則程序中下畫線處應(yīng)填入的語句是( )。

  A.Base.fun( );

  B.Base::fun( );

  C.Base->fun( );

  D.fun( );

  參考答案:B

  參考解析:

  本題考查公用繼承對基類成員的訪問屬性。在公用繼承中,基類的公用成員和保護成員在派生類中保持原有的訪問屬性,其私有成員仍為基類私有。本題中想要輸出Base::fun,則必須調(diào)用基類的公用成員函數(shù)fun,所以使用Base::fun();來調(diào)用基類的成員函數(shù)fun。

掃描/長按二維碼幫助考試通關(guān)
2018年等考報考資訊
2018等考各科通關(guān)技巧
2018各科最新預(yù)測試卷
2018等考各科備考資料

微信搜索"考試吧"了解更多考試資訊、下載備考資料

1 2 3 下一頁

  相關(guān)推薦:

  2018年9月全國計算機等級考試試題匯總(各科目)

  2018年全國計算機等級考試必做試題匯總(各科目)

  2018年全國計算機等級考試復(fù)習(xí)知識點匯總(各科目)

  2018全國計算機等級考試備考經(jīng)驗及應(yīng)試技巧匯總

  歷年真題匯總|考試吧策劃:2018年計算機等級考試報考指南

0
收藏該文章
0
收藏該文章
文章搜索
萬題庫小程序
萬題庫小程序
·章節(jié)視頻 ·章節(jié)練習(xí)
·免費真題 ·?荚囶}
微信掃碼,立即獲取!
掃碼免費使用
版權(quán)聲明:如果計算機等級考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請與我們聯(lián)系800@exam8.com,我們將會及時處理。如轉(zhuǎn)載本計算機等級考試網(wǎng)內(nèi)容,請注明出處。
在線模擬試題
考證通關(guān)殺器
考試最新資訊
學(xué)
一次通關(guān)技巧