計算機二級C++強化測試
為幫助同學們們備戰計算機二級考試,下面是小編分享的計算機二級C++強化測試,一起來看一下吧。
1). 下面描述中錯誤的是( )。
A.系統總體結構圖支持軟件系統的詳細設計
B.軟件設計是將軟件需求轉換為軟件表示的過程
C.數據結構與數據庫設計是軟件設計的任務之一
圖是軟件詳細設計的表示T具
正確答案:A
答案解析:軟件系統的總體結構圖是軟件架構設計的依據,它並不能支持軟件的詳細設計。
2). 下面關於break語句的描述中,不正確的是
k可以用於循環體內
k語句可以在for循環語句中出現多次
k語句可以在switch語句中出現多次
k語句可用於if條件判斷語句內
正確答案:D
3). 某二叉樹有5個度為2的結點,則該二叉樹中的葉子結點數是( )。
A.10
B.8
C.6
D.4
正確答案:C
答案解析:根據二叉樹的性質判定,在任意二叉樹中,度為O的葉子結點總是比度為2的結點多一個。
4). 最簡單的交換排序方法是( )
A.快速排序
B.選擇排序
C.堆排序
D.冒泡排序
正確答案:D
5). 能正確表示邏輯關係:"a≥10或a≤0"的C++語言表達式是( )
A.a>10 or a<=0
B.a>=0|a<=10
C.a>=10 && a<=0
D.a>=10‖a<=0
正確答案:D
6). 程序中有語句:for(int i=0;i<5;i++)cout《*(p+i)<
*p=a;
p=a;
C.*p=a;
D.p=a;
正確答案:A
答案解析:從循環語句中可以看出,是在0到4的循環中輸出數組a中的前5個元素,輸出的值為*(p+i),即為指針p向後移動指向的元素。所以初始化要將指針p指向數組a,即int*p=a;。
7). 棧底至棧頂依次存放元素A、B、C、D在第五個元素E入棧前棧中元素可以出棧則出棧序列可能是
D
A
A
E
正確答案:B
答案解析:棧操作原則上"後進先出"棧底至棧頂依次存放元素A、B、C、D則表明這4個元素中D是最後進棧B、C處於中間A最早進棧。所以出棧時一定是先出D再出C最後出A。
8). NULL是指
A.0
B.空格
C.未知的.值或無任何值
D.空字符串
正確答案:C
答案解析:此題屬於記憶性的題目,NULL是指未知的值或無任何值。
9). C++語言是以哪種語言為基礎逐漸發展演變而成的一種程序設計語言
B.C
正確答案:B
答案解析:C++語言是對C語言進行了擴充,繼承了它的語法,並增加了面向對象的設計方法。
10). 繼承機制的作用是
A.信息隱藏
B.數據封裝
C.定義新類
D.數據抽象
正確答案:C
11). 以下定義數組中錯誤的是( )
a[10];
a[2][20];
a[20][];
a[];
正確答案:C
12). 鏈表不具有的特點是
A.不必事先估計存儲空間
B.可隨機訪問任一元素
C.插入刪除不需要移動元素
D.所需空間與線性表長度成正比
正確答案:B
13). C++語言中,表示一條語句結束的標號是
A.#
B.;
C.//
D.}
正確答案:B
答案解析:C++語言中語句的結束符是分號。
14). 建立派生類對象時,3種構造函數分別是a(基類的構造函數)、b(成員對象的構造函數)、c(派生類的構造函數)這3種構造函數的調用順序為
正確答案:A
15). 拷貝構造函數的參數一般是( )
A.某對象名
B.某對象成員名
C.某對象的引用名
D.指向對象的指針名
正確答案:C
16). 在公有派生情況下,有關派生類對象和基類對象的關係,下列敍述不正確的是( )
A.派生類的對象可以賦給基類的對象
B.派生類的對象可以初始化基類的引用
C.派生類的對象可以直接訪問基類中的成員
D.派生類的對象的地址可以賦給指向基類的指針
正確答案:C
17). 在C++語言中,封裝是藉助於什麼達到的?
A.結構
B.類
C.數組
D.函數
正確答案:B
答案解析:C++基本的性質就是它的封裝性,而封裝性主要是靠類來實現的。
18). 以下關於友元函數的敍述不正確的是( )。
A.友元函數提供了類之間數據共享的一個途徑
B.一個友元函數可以訪問任何類的任何成員
C.友元函數破壞了數據的封裝
D.友元函數增加了程序設計的靈活性
正確答案:B
答案解析:友元函數的作用在於提高程序的運行效率,但是它破壞了類的封裝性和隱藏性,使得非成員函數可以訪問類的私有成員。只有在類中聲明瞭某個函數是自己的友元函數之後,該友元函數才能夠訪問本類的私有成員,而不是任何類的任何成員都可以訪問。
19). 派生類對象對其基類中的什麼成員是可訪問的?( )
A.公有繼承的私有成員
B.私有繼承的公有成員
C.私有繼承的保護成員
D.保護繼承的保護成員
正確答案:B
答案解析:本題考查關於C++語言繼承問題中派生類對基類的訪問。C++語言中通常有三種繼承修飾符,即public、protected、prlvate,限制依次嚴格,另外對類中的數據和函數也由這三種修飾符進行限制,有三種成員是不能繼承的:公有繼承基類的私有成員,私有繼承基類的私有成員,保護繼承基類的私有成員。
20). 已知char a;int b;float c;double d;則表達式a* b+c-d的結果為( )。
le
t
正確答案:A
答案解析:本題考查混合運算表達式類型,由表達式中具有最高優先級的類型所確定,所以答案為A。