《算法設(shè)計(jì)與分析( 一)》在線平時(shí)作業(yè)2-00001
試卷總分:100 得分:100
一、單選題 (共 20 道試題,共 100 分)
1.下列關(guān)于基類和派生類的敘述中,正確的是( )。
A.派生類不能訪問(wèn)基類的保護(hù)成員
B.作為虛基類的類不能被實(shí)例化
C.派生類應(yīng)當(dāng)向基類的構(gòu)造函數(shù)傳遞參數(shù)
D.虛函數(shù)必須在派生類中重新實(shí)現(xiàn)
2.在對(duì)函數(shù)進(jìn)行原型聲明時(shí),下列語(yǔ)法成分中,不需要的是( )。
A.函數(shù)返回類型
B.函數(shù)參數(shù)列表
C.函數(shù)名
D.函數(shù)體
3.若PAT是一個(gè)類,則程序運(yùn)行時(shí),語(yǔ)句“PAT(*ad)[3];”調(diào)用PAT的構(gòu)造函數(shù)的次數(shù)是( ).
A.0
B.1
C.2
D.3
4.對(duì)于一個(gè)類定義,下列敘述中錯(cuò)誤的是( )
A.如果沒(méi)有定義拷貝構(gòu)造函數(shù),編譯器會(huì)生成一個(gè)拷貝構(gòu)造函數(shù)
B.如果沒(méi)有定義默認(rèn)的構(gòu)造函數(shù),編譯器將一定生成一個(gè)默認(rèn)的構(gòu)造函數(shù)
C.如果沒(méi)有定義構(gòu)造函數(shù),編譯器將生成一個(gè)默認(rèn)的構(gòu)造函數(shù)和一個(gè)拷貝構(gòu)造函數(shù)
D.如果已經(jīng)定義了構(gòu)造函數(shù)和拷貝構(gòu)造函數(shù),編譯器不會(huì)生成任何一個(gè)構(gòu)造函數(shù)
5.友元的作用是( )
A.提高程序的運(yùn)行效率
B.加強(qiáng)類的封裝性
C.實(shí)現(xiàn)數(shù)據(jù)的隱藏性
D.增加成員函數(shù)的種類
6.貪婪算法通常以( )的方式進(jìn)行求解子問(wèn)題的。
A.自頂向上
B.從中間二分
C.自頂向下
D.無(wú)序
7.下列函數(shù)原型聲明中,錯(cuò)誤的是( )。
A.int function(int m, int n);
B.int function(int ,int );
C.int function(int m=3, int n);
D.int function(int &m, int n);
8.下面不是分支定界法搜索方式的是( )。
A.廣度優(yōu)先
B.最小耗費(fèi)優(yōu)先
C.最大效益優(yōu)先
D.深度優(yōu)先
9.假定A是一個(gè)類,那么執(zhí)行語(yǔ)句“A a,b(3),*p;”調(diào)用了( )次構(gòu)造函數(shù)。
A.2
B.3
C.4
D.5
10.定義派生類時(shí),若不使用關(guān)鍵字顯示地規(guī)定采用何種繼承方式,則默認(rèn)方式為( )。
A.私有
B.非私有
C.保護(hù)
D.公有
11.考慮函數(shù)原型void test(int a,int b=7,char z=‘*’),下面的函數(shù)調(diào)用中,屬于不合法調(diào)用的是( )。
A.test(5);
B.test(5,8);
C.test(6,’#’)
D.test(0,0,’*’);
12.當(dāng)派生類繼承一個(gè)基類時(shí),默認(rèn)的繼承方式為( )。
A.不確定
B.private
C.protected
D.public
13.下列重載函數(shù)的描述中,( )是錯(cuò)誤的。
A.重載函數(shù)中不允許使用默認(rèn)參數(shù)
B.重載函數(shù)中編譯是根據(jù)參數(shù)表進(jìn)行選擇的
C.不要使用重載函數(shù)來(lái)描述毫不相干的函數(shù)
D.構(gòu)造函數(shù)重載將會(huì)給初始化帶來(lái)多種方式
14.以下對(duì)基類和派生類關(guān)系的描述錯(cuò)誤的是( )。
A.派生類是基類的具體化
B.派生類是基類的子集
C.派生類是基類定義的延續(xù)
D.派生類是基類的組合
15.貪婪算法通常以( )的方式進(jìn)行求解子問(wèn)題的。
A.自頂向上
B.從中間二分
C.自頂向下
D.無(wú)序
16.下列關(guān)于C++函數(shù)的說(shuō)明中,正確的是( ) 。
A.內(nèi)聯(lián)函數(shù)就是定義在另一個(gè)函數(shù)體內(nèi)部的函數(shù)
B.函數(shù)體的最后一條語(yǔ)句必須是return語(yǔ)句
C.C++要求在調(diào)用一個(gè)函數(shù)之前,必須先聲明其類型
D.編譯器會(huì)根據(jù)函數(shù)的返回值類型和參數(shù)表來(lái)區(qū)分函數(shù)的不同重載形式
17.C++程序中的語(yǔ)句是以( )符號(hào)結(jié)束。
A.;
B.,
C..
D.?
18.下面對(duì)繼承關(guān)系描述中,正確的是( )。
A.在公有繼承中,基類中的公有成員和私有成員在派生類中都是可見(jiàn)的
B.在公有繼承中,基類中私有成員對(duì)派生類的對(duì)象是不可見(jiàn)的
C.在私有繼承中,基類只有公有成員對(duì)派生類對(duì)象是可見(jiàn)的
D.在私有繼承中,基類中的保護(hù)成員對(duì)派生類的對(duì)象是可見(jiàn)的
19.下列關(guān)于函數(shù)的描述中,錯(cuò)誤的是( ).
A.函數(shù)可以沒(méi)有返回值
B.函數(shù)可以沒(méi)有參數(shù)
C.函數(shù)可以是一個(gè)類的成員
D.函數(shù)不能被定義成模板
20.下列選項(xiàng)中屬于面向?qū)ο笤O(shè)計(jì)方法主要特征的是( )。
A.繼承
B.自頂向下
C.模塊化
D.逐步求精