- 3月全國計(jì)算機(jī)等級考試二級C++筆試真題 推薦度:
- 相關(guān)推薦
全國計(jì)算機(jī)等級考試二級C++筆試真題
在各個(gè)領(lǐng)域,我們最熟悉的就是試題了,試題是參考者回顧所學(xué)知識和技能的重要參考資料。什么樣的試題才是好試題呢?以下是小編收集整理的全國計(jì)算機(jī)等級考試二級C++筆試真題,供大家參考借鑒,希望可以幫助到有需要的朋友。
一、單選題(每題2分,共20分)
1. 在C++中,用于輸入單個(gè)字符的流對象是( )
A. cin
B. cout
C. cerr
D. clog
答案:A。cin用于標(biāo)準(zhǔn)輸入,可輸入各種數(shù)據(jù)類型,包括單個(gè)字符。
2. 下面關(guān)于C++函數(shù)默認(rèn)參數(shù)的描述中,正確的是( )
A. 函數(shù)默認(rèn)參數(shù)只能有一個(gè)
B. 函數(shù)默認(rèn)參數(shù)必須在函數(shù)定義時(shí)設(shè)置
C. 函數(shù)默認(rèn)參數(shù)可以在函數(shù)聲明時(shí)設(shè)置
D. 函數(shù)默認(rèn)參數(shù)的值必須是常量表達(dá)式
答案:C。函數(shù)默認(rèn)參數(shù)可以在函數(shù)聲明時(shí)設(shè)置,也可以在函數(shù)定義時(shí)設(shè)置(如果在聲明和定義都設(shè)置,定義處不能再次指定默認(rèn)值),默認(rèn)參數(shù)可以有多個(gè),其值可以是常量表達(dá)式或者具有默認(rèn)構(gòu)造函數(shù)的類型。
3. 若有定義:int a = 10; 則下列表達(dá)式的值為4的是( )
A. a / 3
B. a % 3
C. a >> 1
D. a << 2
答案:C。a = 10,10的二進(jìn)制表示為1010,右移1位(a >> 1)后變?yōu)?101,十進(jìn)制為5;左移2位(a << 2)后變?yōu)?01000,十進(jìn)制為40;10除以3等于3余1(a / 3 = 3,a % 3 = 1)。
4. 以下哪種數(shù)據(jù)類型不能用于定義數(shù)組的下標(biāo)( )
A. int
B. char
C. float
D. enum類型
答案:C。數(shù)組下標(biāo)必須是整數(shù)類型或者可以轉(zhuǎn)換為整數(shù)類型的表達(dá)式,float類型不能直接用作數(shù)組下標(biāo)。
5. 在C++類中,靜態(tài)成員函數(shù)( )
A. 可以訪問類的非靜態(tài)成員
B. 不能訪問類的靜態(tài)成員
C. 只能通過類名來調(diào)用
D. 可以通過類的對象來調(diào)用
答案:D。靜態(tài)成員函數(shù)可以通過類的對象來調(diào)用,也可以通過類名調(diào)用,它不能訪問類的非靜態(tài)成員,但可以訪問類的靜態(tài)成員。
6. 若有以下函數(shù)模板定義:
template
T Max(T a, T b) {
return (a > b)? a : b;
}
當(dāng)調(diào)用`Max(3.5, 2)`時(shí),會發(fā)生( )
A. 編譯錯(cuò)誤,因?yàn)槟0鍏?shù)類型不匹配
B. 編譯成功,自動將2轉(zhuǎn)換為double類型
C. 運(yùn)行時(shí)錯(cuò)誤
D. 以上都不對
答案:B。在函數(shù)模板調(diào)用時(shí),會根據(jù)實(shí)參類型自動推導(dǎo)模板參數(shù)類型,這里會將2轉(zhuǎn)換為double類型以匹配3.5的類型。
7. 在C++中,打開一個(gè)文件并將文件指針定位到文件末尾的模式是( )
A. ios::in
B. ios::out
C. ios::ate
D. ios::app
答案:C。ios::ate模式打開文件并將文件指針定位到文件末尾;ios::in用于讀文件;ios::out用于寫文件;ios::app用于追加寫文件。
8. 以下關(guān)于C++中的引用說法正確的是( )
A. 引用必須在定義時(shí)初始化
B. 引用可以重新賦值,指向不同的對象
C. 引用是變量的別名,占用獨(dú)立的內(nèi)存空間
D. 引用不能作為函數(shù)的返回值
答案:A。引用必須在定義時(shí)初始化,引用一旦初始化就不能再指向其他對象,引用不占用獨(dú)立的內(nèi)存空間(和被引用對象共享內(nèi)存),引用可以作為函數(shù)的返回值。
9. 若有類定義如下:
class A {
private:
int num;
public:
A(int n = 0) : num(n) {}
int getNum() const { return num; }
};
則以下對類A對象的操作中,合法的是( )
A.
A a;
a.num = 10;
B.
A a(5);
cout << a.getNum() << endl;
C.
A *p = new A;
*p.num = 20;
D.
A a;
const A &ra = a;
ra.num = 30;
答案:B。A選項(xiàng)中num是私有成員,不能在類外直接訪問;C選項(xiàng)中應(yīng)該是(*p).num或者p->num;D選項(xiàng)中ra是常量引用,不能修改其成員。
10. 下面關(guān)于C++中構(gòu)造函數(shù)的描述,錯(cuò)誤的是( )
A. 構(gòu)造函數(shù)可以重載
B. 構(gòu)造函數(shù)可以有默認(rèn)參數(shù)
C. 構(gòu)造函數(shù)可以是虛函數(shù)
D. 構(gòu)造函數(shù)名與類名相同
答案:C。構(gòu)造函數(shù)不能是虛函數(shù),虛函數(shù)是為了實(shí)現(xiàn)多態(tài)性,而構(gòu)造函數(shù)是在對象創(chuàng)建時(shí)調(diào)用的特殊函數(shù),不適合作為虛函數(shù)。
二、多選題(每題3分,共15分)
1. 以下哪些屬于C++中的基本數(shù)據(jù)類型( )
A. int
B. string
C. char
D. float
E. bool
答案:ACDE。int(整數(shù)類型)、char(字符類型)、float(單精度浮點(diǎn)類型)、bool(布爾類型)是基本數(shù)據(jù)類型,而string是C++標(biāo)準(zhǔn)庫中的類類型,不屬于基本數(shù)據(jù)類型。
2. 在C++中,關(guān)于動態(tài)內(nèi)存分配的說法正確的是( )
A. 使用new關(guān)鍵字可以動態(tài)分配內(nèi)存
B. 使用關(guān)鍵字釋放動態(tài)分配的單個(gè)對象的內(nèi)存
C. 使用 []關(guān)鍵字釋放動態(tài)分配的數(shù)組內(nèi)存
D. 動態(tài)分配的內(nèi)存位于棧區(qū)
E. 動態(tài)分配內(nèi)存失敗時(shí)會拋出異常
答案:ABCE。動態(tài)分配的內(nèi)存位于堆區(qū),而不是棧區(qū);new用于動態(tài)分配內(nèi)存,用于釋放單個(gè)對象的動態(tài)內(nèi)存, []用于釋放數(shù)組的動態(tài)內(nèi)存,在C++中動態(tài)分配內(nèi)存失敗時(shí)(例如沒有足夠的內(nèi)存)會拋出異常。
3. 以下關(guān)于C++類的繼承的描述中,正確的是( )
A. 繼承可以實(shí)現(xiàn)代碼的復(fù)用
B. 可以實(shí)現(xiàn)多繼承,即一個(gè)類可以繼承多個(gè)類
C. 派生類可以訪問基類的私有成員
D. 基類的構(gòu)造函數(shù)不會被派生類繼承
E. 繼承關(guān)系是一種“is - a”關(guān)系
答案:ABDE。繼承可以實(shí)現(xiàn)代碼復(fù)用,C++支持多繼承,基類的構(gòu)造函數(shù)不會被派生類繼承,繼承關(guān)系表示派生類“is - a”基類,派生類不能直接訪問基類的私有成員。
4. 在C++中,函數(shù)重載的判斷依據(jù)包括( )
A. 函數(shù)名
B. 函數(shù)的返回值類型
C. 函數(shù)的參數(shù)個(gè)數(shù)
D. 函數(shù)的參數(shù)類型
E. 函數(shù)的調(diào)用方式
答案:ACD。函數(shù)重載是指在同一作用域內(nèi),可以有一組具有相同函數(shù)名,不同參數(shù)個(gè)數(shù)或者不同參數(shù)類型的函數(shù),函數(shù)的返回值類型和調(diào)用方式不是函數(shù)重載的判斷依據(jù)。
5. 對于C++中的流操作,以下哪些說法是正確的( )
A. cin和cout是預(yù)定義的流對象
B. 可以通過流操作符“<<”和“>>”進(jìn)行輸入輸出操作
C. 可以對流對象進(jìn)行格式化輸出設(shè)置
D. 流操作只能用于標(biāo)準(zhǔn)輸入輸出設(shè)備
E. 可以自定義流類
答案:ABCE。cin是標(biāo)準(zhǔn)輸入流對象,cout是標(biāo)準(zhǔn)輸出流對象,可以使用“<<”(輸出)和“>>”(輸入)流操作符進(jìn)行輸入輸出操作,并且可以通過一些函數(shù)對流對象進(jìn)行格式化輸出設(shè)置,還可以自定義流類,流操作不僅可以用于標(biāo)準(zhǔn)輸入輸出設(shè)備,也可以用于文件等其他設(shè)備。
三、判斷題(每題1分,共5分)
1. 在C++中,所有的函數(shù)都可以被其他函數(shù)調(diào)用。( )
答案:錯(cuò)誤。例如私有成員函數(shù)只能在類的內(nèi)部被調(diào)用,不能被類外的函數(shù)直接調(diào)用。
2. 數(shù)組名在作為函數(shù)參數(shù)傳遞時(shí),會退化為指針。( )
答案:正確。在C++中,數(shù)組名作為函數(shù)參數(shù)傳遞時(shí),會失去其數(shù)組的特性,退化為指向數(shù)組首元素的指針。
3. C++中的友元函數(shù)破壞了類的封裝性。( )
答案:正確。友元函數(shù)可以訪問類的私有成員,這在一定程度上破壞了類的封裝性。
4. 一個(gè)類的靜態(tài)數(shù)據(jù)成員只有一份,被所有該類的對象共享。( )
答案:正確。靜態(tài)數(shù)據(jù)成員屬于類,而不是屬于某個(gè)對象,所有該類的對象共享這一靜態(tài)數(shù)據(jù)成員。
5. 在C++中,模板實(shí)例化是在編譯時(shí)完成的。( )
答案:正確。模板實(shí)例化是在編譯階段根據(jù)模板參數(shù)生成具體的函數(shù)或類的過程。
【全國計(jì)算機(jī)等級考試二級C++筆試真題】相關(guān)文章:
3月全國計(jì)算機(jī)等級考試二級C++筆試真題10-11
全國計(jì)算機(jī)等級考試二級VFP筆試真題及答案11-26
全國計(jì)算機(jī)等級考試二級C++筆試題08-24
計(jì)算機(jī)等級考試二級ACCESS筆試真題10-06
9月全國計(jì)算機(jī)等級考試二級JAVA筆試真題10-13
全國計(jì)算機(jī)等級考試二級JAVA筆試真題答案及解析10-11