22春學(xué)期(高起本1709-1803、全層次1809-2103)《程序設(shè)計(jì)基礎(chǔ)(下)》在線(xiàn)作業(yè)-00003
試卷總分:100 得分:100
一、單選題 (共 20 道試題,共 40 分)
1.假定X為一個(gè)類(lèi),執(zhí)行X a[3],*p[2];語(yǔ)句時(shí)會(huì)自動(dòng)調(diào)用該類(lèi)的構(gòu)造函數(shù)( )次。
A.2
B.3
C.4
D.5
2.一個(gè)順序表第一個(gè)元素的存儲(chǔ)地址是100,每個(gè)元素的長(zhǎng)度為4個(gè)字節(jié),則第5個(gè)元素的地址是( )。
A.100
B.108
C.116
D.120
3.下列虛基類(lèi)的聲明中正確的是( )。
A.class virtual B:public A
B.virtual class B:public
C.class B:public A virtual
D.class B: virtual public A
4.在公有派生情況下,有關(guān)派生類(lèi)對(duì)象和基類(lèi)對(duì)象的關(guān)系,不正確的敘述是()。
A.派生類(lèi)的對(duì)象可以賦給基類(lèi)對(duì)象
B.派生類(lèi)的對(duì)象可以初始化基類(lèi)的引用
C.派生類(lèi)的對(duì)象可以直接訪(fǎng)問(wèn)基類(lèi)的成員
D.派生類(lèi)的對(duì)象的地址可以賦給指向基類(lèi)的指針
5.對(duì)基類(lèi)和派生類(lèi)的描述中錯(cuò)誤的是( )。
A.派生類(lèi)是基類(lèi)的具體化
B.基類(lèi)繼承了派生類(lèi)的屬性
C.派生類(lèi)是基類(lèi)定義的延續(xù)
D.派生類(lèi)是基類(lèi)的特殊化
6.在一個(gè)有向圖中,所有頂點(diǎn)的入度之和等于所有頂點(diǎn)的出度之和的( )倍。
A.1
B.2
C.3
D.4
7.類(lèi)B是類(lèi)A的公有派生類(lèi),類(lèi)A和類(lèi)B中都定義了虛函數(shù)func(),p是一個(gè)指向類(lèi)A對(duì)象的指針,則p->A::func()將( )。
A.調(diào)用類(lèi)A中是函數(shù)func()
B.調(diào)用類(lèi)B中是函數(shù)func()
C.根據(jù)P所指的對(duì)象類(lèi)型而確定調(diào)用A中或類(lèi)B中的函數(shù)func()
D.既調(diào)用類(lèi)A中函數(shù),也調(diào)用類(lèi)B中的函數(shù)
8.下列靜態(tài)數(shù)據(jù)成員的特性中,( )是錯(cuò)誤的。
A.說(shuō)明靜態(tài)數(shù)據(jù)成員時(shí)前邊要加關(guān)鍵字static來(lái)修飾
B.靜態(tài)數(shù)據(jù)成員在類(lèi)體外進(jìn)行初始化
C.引用靜態(tài)數(shù)據(jù)成員時(shí),要在靜態(tài)數(shù)據(jù)成員名前加和作用域運(yùn)算符
D.靜態(tài)數(shù)據(jù)成員不是所有對(duì)象所共有的
9.利用數(shù)組a[N]順序存儲(chǔ)一個(gè)棧時(shí),用top表示棧頂指針,用top==-1表示???并已知棧未滿(mǎn),當(dāng)元素x進(jìn)棧時(shí)所執(zhí)行的操作是( )。
A.top--; a[top]=x;
B.a[top]=x; top--;
C.top++; a[top]=x;
D.a[top]=x; top++;
10.在一個(gè)鏈接隊(duì)列中,假設(shè)f和r 分別是隊(duì)頭和隊(duì)尾指針,則插入一個(gè)s結(jié)點(diǎn)的運(yùn)算時(shí)( )。
A.f->next=s; f=s;
B.r->next=s; r=s;
C.s->next=r; r=s;
D.s->next=f; f=s;
11.在數(shù)據(jù)結(jié)構(gòu)中,與所使用的計(jì)算機(jī)無(wú)關(guān)的是數(shù)據(jù)的( )結(jié)構(gòu)。
A.邏輯
B.存儲(chǔ)
C.邏輯和存儲(chǔ)
D.物理
12.在樹(shù)中,擁有相同雙親的兩個(gè)結(jié)點(diǎn)稱(chēng)為( )結(jié)點(diǎn)。
A.兄弟
B.堂兄弟
C.父子
D.同等
13.線(xiàn)性表中的一個(gè)結(jié)點(diǎn)最多有( )個(gè)后繼。
A.0
B.1
C.2
D.無(wú)數(shù)個(gè)
14.不同的對(duì)象可以調(diào)用相同名稱(chēng)的函數(shù),并可導(dǎo)致完全不同的行為的現(xiàn)象稱(chēng)為( )。
A.多態(tài)性
B.抽象
C.繼承
D.封裝
15.下面說(shuō)法中正確的是( )。
A.一個(gè)類(lèi)只能定義一個(gè)構(gòu)造函數(shù),但可以定義多個(gè)析構(gòu)函數(shù)
B.一個(gè)類(lèi)只能定義一個(gè)析構(gòu)函數(shù),但可以定義多個(gè)構(gòu)造函數(shù)
C.構(gòu)造函數(shù)與析構(gòu)函數(shù)同名,只要名字前加了一個(gè)求反符號(hào)(~)
D.構(gòu)造函數(shù)可以指定返回類(lèi)型,而析構(gòu)函數(shù)不能指定任何返回類(lèi)型,即使是void類(lèi)型也不可以
16.在一個(gè)順序循環(huán)隊(duì)列中,隊(duì)尾指針指向隊(duì)尾元素的( )位置。
A.前一個(gè)
B.后一個(gè)
C.當(dāng)前
D.最后
17.在類(lèi)的定義形式中,數(shù)據(jù)成員、成員函數(shù)和( )組成了類(lèi)定義體。
A.成員的訪(fǎng)問(wèn)控制信息
B.公有消息
C.私有消息
D.保護(hù)消息
18.下列關(guān)于類(lèi)的繼承描述中,( )是錯(cuò)誤的。
A.派生類(lèi)可以訪(fǎng)問(wèn)基類(lèi)的所有數(shù)據(jù)成員,也能調(diào)用基類(lèi)的所有成員函數(shù)
B.派生類(lèi)也是基類(lèi),但基類(lèi)不一定具有派生類(lèi)的全部屬性和方法
C.繼承描述類(lèi)的層次關(guān)系,派生類(lèi)可以具有與基類(lèi)相同的屬性和方法
D.一個(gè)基類(lèi)可以有多個(gè)派生類(lèi),一個(gè)派生類(lèi)可以有多個(gè)基類(lèi)
19.下面描述中,錯(cuò)誤的是( )。
A.虛函數(shù)是沒(méi)有實(shí)現(xiàn)的函數(shù)
B.純虛函數(shù)的實(shí)現(xiàn)在派生類(lèi)中
C.抽象類(lèi)是有純虛函數(shù)的類(lèi)
D.抽象類(lèi)指針可以指向不同的派生類(lèi)
20.下面程序段中,說(shuō)法正確的是( ) class location{ public : int GetX(); }; class rectangle:private location { public: int GetW(); };
A.類(lèi)rectangle的私有派生類(lèi)是location
B.類(lèi)rectangle中的public成員在類(lèi) location中是私有的
C.類(lèi)location中的public成員在類(lèi) rectangle中是不可訪(fǎng)問(wèn)的
D.viod f( ) { Rectangle r; int X=r .GetX( ); } 其中int X = r .GetX( );是非法語(yǔ)句
二、多選題 (共 15 道試題,共 30 分)
21.下面描述中,正確的是( )。
A.在基類(lèi)定義的public成員在公有繼承的派生類(lèi)中可見(jiàn),也能在類(lèi)外被訪(fǎng)問(wèn)
B.在基類(lèi)定義的public和protected成員在私有繼承的派生類(lèi)中可見(jiàn),在類(lèi)外可以被訪(fǎng)問(wèn)
C.在基類(lèi)定義的public和protected成員在保護(hù)繼承的派生類(lèi)中可見(jiàn)
D.在派生類(lèi)中不可見(jiàn)的成員要變成可訪(fǎng)問(wèn)的,需要進(jìn)行訪(fǎng)問(wèn)聲明
22.下面對(duì)對(duì)象成員的正確描述是( )。
A.可以在構(gòu)造函數(shù)的初始化列表中給出對(duì)象成員的初始化
B.可以在構(gòu)造函數(shù)的函數(shù)體中給出對(duì)象成員的初始化
C.如果一個(gè)對(duì)象成員有無(wú)參構(gòu)造函數(shù),則可以省略對(duì)象成員的初始化語(yǔ)句
D.若A類(lèi)中有B類(lèi)對(duì)象成員,則在創(chuàng)建A類(lèi)對(duì)象時(shí),先執(zhí)行B類(lèi)的構(gòu)造函數(shù),再執(zhí)行A類(lèi)的構(gòu)造函數(shù)
23.二叉樹(shù)可以采用的存儲(chǔ)方式包括:
A.順序存儲(chǔ)
B.二叉鏈表
C.三叉鏈表
D.隊(duì)列
24.下面對(duì)友元的正確描述是( )。
A.關(guān)鍵字friend用于聲明友元
B.一個(gè)類(lèi)的成員函數(shù)可以是另一個(gè)類(lèi)的友元
C.友元函數(shù)訪(fǎng)問(wèn)對(duì)象的成員不受訪(fǎng)問(wèn)特性影響
D.友元函數(shù)通過(guò)this指針訪(fǎng)問(wèn)對(duì)象成員
25.下面對(duì)析構(gòu)函數(shù)的正確描述是( )。
A.系統(tǒng)可以提供默認(rèn)的析構(gòu)函數(shù)
B.析構(gòu)函數(shù)必須由用戶(hù)定義
C.析構(gòu)函數(shù)沒(méi)有參數(shù)
D.析構(gòu)函數(shù)可以設(shè)置默認(rèn)參數(shù)
26.下面描述中,錯(cuò)誤的是( )。
A.虛函數(shù)是沒(méi)有實(shí)現(xiàn)的函數(shù)
B.純虛函數(shù)是沒(méi)有實(shí)現(xiàn)的函數(shù)
C.抽象類(lèi)可以用于創(chuàng)建對(duì)象
D.抽象類(lèi)指針可以指向不同的派生類(lèi)
27.函數(shù)模板可以與()重載。
A.函數(shù)模板
B.普通函數(shù)
C.類(lèi)模板
D.普通類(lèi)
28.下列關(guān)于類(lèi)模板的描述中,正確的是( )。
A.類(lèi)模板中可以有靜態(tài)數(shù)據(jù)成員
B.類(lèi)模板的靜態(tài)數(shù)據(jù)成員由所有該類(lèi)模板實(shí)例化的模板類(lèi)共享
C.類(lèi)模板的靜態(tài)數(shù)據(jù)成員需要在類(lèi)體外進(jìn)行定義和初始化
D.類(lèi)模板中可以用類(lèi)型形參聲明靜態(tài)數(shù)據(jù)成員
29.如果類(lèi)A繼承了類(lèi)B,則類(lèi)A稱(chēng)為()。
A.派生類(lèi)
B.繼承類(lèi)
C.子類(lèi)
D.父類(lèi)
30.下列關(guān)于類(lèi)的常量數(shù)據(jù)成員的說(shuō)法中,正確的是( )。
A.常量數(shù)據(jù)成員只能是公有成員
B.可以在構(gòu)造函數(shù)的初始化列表中為常量數(shù)據(jù)成員賦初值
C.可以在構(gòu)造函數(shù)的函數(shù)體中為常量數(shù)據(jù)成員賦初值
D.常量數(shù)據(jù)成員的值初始化后就只能訪(fǎng)問(wèn)、無(wú)法修改
31.下面描述中,正確的是( )。
A.使用fstream類(lèi)必須包含頭文件fstream
B.ostream對(duì)象用來(lái)實(shí)現(xiàn)輸出操作
C.ios是iostream的直接基類(lèi)
D.iostream是通過(guò)多重繼承得到的派生類(lèi)
32.下列關(guān)于類(lèi)的常量成員函數(shù)的說(shuō)法中,正確的是( )。
A.只有類(lèi)的成員函數(shù)可以在函數(shù)頭后面加const關(guān)鍵字
B.在常量成員函數(shù)中可以獲取成員變量的值、但不能修改
C.在常量成員函數(shù)中只能訪(fǎng)問(wèn)常量數(shù)據(jù)成員
D.在類(lèi)體外定義常量成員函數(shù)時(shí),函數(shù)頭后面的const關(guān)鍵字可以省略
33.下列函數(shù)中,可以作為虛函數(shù)的是( )。
A.普通成員函數(shù)
B.構(gòu)造函數(shù)
C.靜態(tài)成員函數(shù)
D.析構(gòu)函數(shù)
34.如果類(lèi)A繼承了類(lèi)B,則類(lèi)B稱(chēng)為()。
A.派生類(lèi)
B.基類(lèi)
C.子類(lèi)
D.父類(lèi)
35.下列關(guān)于類(lèi)的常量數(shù)據(jù)成員的說(shuō)法中,正確的是( )。
A.一個(gè)類(lèi)的常量數(shù)據(jù)成員必須在類(lèi)體中初始化
B.一個(gè)類(lèi)的常量數(shù)據(jù)成員由該類(lèi)的所有對(duì)象共享
C.一個(gè)類(lèi)的常量數(shù)據(jù)成員對(duì)于該類(lèi)的不同對(duì)象可以取不同的值
D.使用const關(guān)鍵字可以將一個(gè)數(shù)據(jù)成員聲明為常量數(shù)據(jù)成員
三、判斷題 (共 15 道試題,共 30 分)
36.根據(jù)二叉樹(shù)的中序遍歷序列并不能確定二叉樹(shù)的根結(jié)點(diǎn)。
37.深度優(yōu)先遍歷類(lèi)似于樹(shù)的先序遍歷。
38.含有純虛函數(shù)的類(lèi)是抽象類(lèi)。
39.類(lèi)非成員函數(shù)形式的運(yùn)算符重載函數(shù)通常采用友元函數(shù),是為了在運(yùn)算符重載中方便訪(fǎng)問(wèn)類(lèi)中的非公有成員。
40.說(shuō)明或定義對(duì)象時(shí),類(lèi)名前面不需要加class關(guān)鍵字。
41.鄰接鏈表只能用于有向圖的存儲(chǔ),鄰接矩陣對(duì)于有向圖和無(wú)向圖的存儲(chǔ)都適用。
42.線(xiàn)性結(jié)構(gòu)的特點(diǎn)是只有一個(gè)結(jié)點(diǎn)沒(méi)有前驅(qū),只有一個(gè)結(jié)點(diǎn)沒(méi)有后繼,其余的結(jié)點(diǎn)只有一個(gè)前驅(qū)和后繼。
43.用鄰接鏈表存儲(chǔ)一個(gè)圖時(shí),邊數(shù)越多,占用的存儲(chǔ)空間越大。
44.如果某個(gè)有向圖的鄰接鏈表中第i個(gè)頂點(diǎn)的鏈表為空,則第i個(gè)頂點(diǎn)的入度為零。
45.在樹(shù)中,一個(gè)結(jié)點(diǎn)的后繼結(jié)點(diǎn)稱(chēng)為該結(jié)點(diǎn)的孩子,相應(yīng)地,一個(gè)結(jié)點(diǎn)的前驅(qū)結(jié)點(diǎn)稱(chēng)為該結(jié)點(diǎn)的雙親。
46.邊上帶權(quán)的圖就稱(chēng)為帶權(quán)圖。
47.getline()函數(shù)從流中提取終止字符,但終止字符被丟棄。
48.根據(jù)二叉樹(shù)的先序遍歷序列并不能確定二叉樹(shù)的根結(jié)點(diǎn)。
49.線(xiàn)性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)是可以用不連續(xù)的的存儲(chǔ)單元來(lái)存儲(chǔ)線(xiàn)性表中的數(shù)據(jù)元素。
50.順序表能夠存放的最大元素?cái)?shù)量n稱(chēng)為線(xiàn)性表的長(zhǎng)度。

