《C++程序設(shè)計(jì)》2023年春學(xué)期在線作業(yè)2題目
試卷總分:100 得分:100
一、單選題 (共 20 道試題,共 60 分)
1.應(yīng)在下列程序劃線處填入的正確語(yǔ)句是()。 #include class Base { public: void fun(){cout<<"Base::fun"<<ENDL;} }; class Derived:public Base { void fun() {_____________ //顯示調(diào)用基類的函數(shù)fun() cout<<"Derived::fun"<<ENDL; } };
A.fun();
B.Base.fun();
C.Base::fun();
D.Base->fun();
2.不能作為重載函數(shù)的調(diào)用依據(jù)的是()。
A.參數(shù)個(gè)數(shù)
B.參數(shù)類型
C.返回值類型
D.函數(shù)名稱
3.當(dāng)將一個(gè)函數(shù)f()說(shuō)明為另一個(gè)類B的友元后,函數(shù)f()能夠直接訪問(wèn)類B的()。
A.只能是公有成員
B.只能是保護(hù)成員
C.只能是除私有成員之外的任何成員
D.具有任何權(quán)限的成員
4.若已知char str[20],有語(yǔ)句 cin>>str;,當(dāng)輸入為:This is a cat,則str中的內(nèi)容為()。
A.This is a cat
B.This
C.This is
D.This is a
5.要想以讀方式打開(kāi)文件“D:\File.txt”,以下不能實(shí)現(xiàn)目的的語(yǔ)句是()。
A.ifstream inf("D:\\File txt",ios::in);
B.ifstream inf("D:\\File.txt");
C.ofstream inf("D:\\File.txt",ios::out);
D.fstream inf("D:\\File.txt",ios::in|ios::out);
6.如果表達(dá)式++j*k中的“++”和“*”都是重載的友元運(yùn)算符,則采用運(yùn)算符函數(shù)調(diào)用格式,該表達(dá)式還可以表示為()。
A.operator*(j,operator++(),k)
B.operator*(operator++(j),k)
C.operator++().operator*(k)
D.operator*(operator++(j))
7.如果類B在類A的基礎(chǔ)上構(gòu)造,那么,就稱()。
A.類A為基類或父類,類B為超類或子類
B.類A為基類、父類或超類,類B為派生類或子類
C.類A為派生類,類B為基類
D.類A為派生類或子類,類B為基類、父類或超類
8.對(duì)于一個(gè)類,可以利用關(guān)鍵字()將其他類聲明為該類的友元。
A.public
B.private
C.protected
D.friend
9.下列()可以是虛函數(shù)。
A.構(gòu)造函數(shù)
B.拷貝構(gòu)造函數(shù)
C.靜態(tài)成員函數(shù)
D.析構(gòu)函數(shù)
10.C++程序的執(zhí)行總是從()開(kāi)始的。
A.main函數(shù)
B.第一行
C.頭文件
D.函數(shù)注釋
11.當(dāng)需要使用ostream流類定義一個(gè)流對(duì)象并聯(lián)系一個(gè)字符串時(shí),應(yīng)在文件開(kāi)頭使用#include命令,使之包含()文件。
A.iostream.h
B.stdlib.h
C.strstream.h
D.fstream.h
12.假定classA為一個(gè)類,f()為該類公有的數(shù)據(jù)成員,x為該類的一個(gè)對(duì)象,則訪問(wèn)x對(duì)象中成員函數(shù)f()的格式為()。
A.x.f
B.x.f()
C.x->f
D.x->f()
13.下列語(yǔ)句中不存在類型轉(zhuǎn)換的是()。
A.int(1.1);
B.(double)2.2;
C.int i=1;
D.char c=97;
14.考慮函數(shù)原型void test(int a,int b=7,char="*"),下面的函數(shù)調(diào)用中,屬于不合法調(diào)用的是()。
A.test(5);
B.test(5,8);
C.test(6,"#")
D.test(0,0,"*");
15.實(shí)現(xiàn)運(yùn)行時(shí)的多態(tài)性需要使用()。
A.重載函數(shù)
B.構(gòu)造函數(shù)
C.析構(gòu)函數(shù)
D.虛函數(shù)
16.C++流類庫(kù)預(yù)定義的與標(biāo)準(zhǔn)輸入設(shè)備相關(guān)聯(lián)的是()。
A.cin
B.cout
C.cerr
D.clog
17.析構(gòu)函數(shù)是一種特殊的成員函數(shù),顯式定義時(shí)其訪問(wèn)屬性應(yīng)被定義為()。
A.public
B.private
C.protected
D.static
18.類的析構(gòu)函數(shù)的作用是()。
A.一般成員函數(shù)的初始化
B.類的初始化
C.對(duì)象的初始化
D.刪除類創(chuàng)建的對(duì)象
19.運(yùn)算符重載函數(shù)必須以特殊的關(guān)鍵字()開(kāi)始。
A.virtual
B.operator
C.template
D.static
20.如果編程者沒(méi)有顯式定義構(gòu)造函數(shù)(包括復(fù)制構(gòu)造函數(shù)),C++編譯器就()。
A.出現(xiàn)編譯錯(cuò)誤
B.沒(méi)有構(gòu)造函數(shù)
C.必須顯示定義
D.隱式定義缺省的構(gòu)造函數(shù)
二、判斷題 (共 20 道試題,共 40 分)
21.在刪除一個(gè)動(dòng)態(tài)對(duì)象時(shí),將自動(dòng)調(diào)用該動(dòng)態(tài)對(duì)象所屬類的析構(gòu)函數(shù)。
22.cout通常與顯示器相連,cin通常與鍵盤(pán)相連。
23.類和對(duì)象之間的關(guān)系是具體和抽象的關(guān)系。
24.用對(duì)象訪問(wèn)成員時(shí)應(yīng)使用運(yùn)算符“.",用指向?qū)ο蟮闹羔樤L問(wèn)成員時(shí)應(yīng)使用運(yùn)算符“->"。
25.在默認(rèn)參數(shù)函數(shù)的原型中,所有取缺省值的參數(shù)都必須出現(xiàn)在不取缺省值的參數(shù)的右邊。
26.通過(guò)類對(duì)象可以訪問(wèn)類中所有的成員。
27.類模板必須由程序員實(shí)例化成模板類。
28.使用setw()函數(shù)時(shí)需包含iomanip.h頭文件,而使用width()函數(shù)時(shí)需包含iostream.h頭文件。
29.拷貝構(gòu)造函數(shù)是重載的構(gòu)造函數(shù)。
30.文本文件結(jié)束標(biāo)志為EOF(即-1)。
31.我們不能用抽象類定義對(duì)象,但可以定義對(duì)象的指針。
32.類成員是按照它們?cè)诔蓡T初始化表中列出的順序進(jìn)行初始化的,與它們?cè)陬惱锉宦暶鞯捻樞驘o(wú)關(guān)。
33.C++利用函數(shù)重載實(shí)現(xiàn)面向?qū)ο蟪绦蛟O(shè)計(jì)的封裝性。
34.若左操作數(shù)為基本數(shù)據(jù)類型或其它類對(duì)象時(shí),此運(yùn)算符應(yīng)以友元函數(shù)的方式重載。
35.類中含有指針數(shù)據(jù)成員時(shí),若不定義拷貝構(gòu)造函數(shù)則會(huì)產(chǎn)生指針懸掛問(wèn)題。
36.類中可以包含各種數(shù)據(jù)類型的數(shù)據(jù)成員,但不能有其他類對(duì)象。
37.類是C++中預(yù)定義的數(shù)據(jù)類型。
38.當(dāng)基類的構(gòu)造函數(shù)沒(méi)有參數(shù),或沒(méi)有顯式定義構(gòu)造函數(shù)時(shí),派生類可以不定義構(gòu)造函數(shù)。
39.ofstream是用于寫(xiě)文件的文件流。
40.操縱符函數(shù)setw(n)只對(duì)下一個(gè)輸出有效。
奧鵬,國(guó)開(kāi),廣開(kāi),電大在線,各省平臺(tái),新疆一體化等平臺(tái)學(xué)習(xí)
詳情請(qǐng)咨詢QQ : 3230981406或微信:aopopenfd777