計算機二級考試C++練習及答案
隨着計算機二級考試的臨近,相信同學們已經進入了緊張的備考狀態了,以下是yjbys考試網小編為大家搜索整理的計算機二級考試C++練習試題及答案,望各位考生考試順利。
1). 數據處理的最小單位是( )。
A.數據
B.數據元素
C.數據項
D.數據結構
正確答案:C
答案解析:數據處理的最小單位是數據項。
2). 下列選項中,不屬於模塊間耦合的是
A.數據耦合
B.同構耦合
C.異構耦合
D.公用耦合
正確答案:C
答案解析:目的,本題主要考查了模塊間耦合的類型。要點,模塊之間的耦合程度反映了模塊的獨立性,也反映了系統分解後的複雜程 度。按照耦合程度從弱到強,可以將其分成5級,分別是:數據耦合、同構耦合、控制耦合、公用耦合和內容耦合。選項C),沒有這種耦合方式。考點,評價模塊獨立性的主要標準,以及對它們的定義和分類。
3). 下列選項中,能用作數據常量的是( )。
A.o115
B.o118
C.1.5el.5
D.115L
正確答案:D
答案解析:選項A的第一個字母是o而不是數字0,所以不構成數值常量;選項B中,8不是八進制數字,八進制數為0到7;選項C中字母″e″後面的指數是小數而非整數,不合法,不是一個合法的指數形式的數值常量;在選項D中,可以在整型常量的後面加一個字母L,表示這個常量在內存中佔4字節。
4). 下列關於數據庫設計的敍述中,正確的是( )
A.在需求分析階段建立數據字典
B.在概念設計階段建立數據字典
C.在邏輯設計階段建立數據字典
D.在物理設計階段建立數據字典
正確答案:A
答案解析:數據字典是在需求分析階段建立,在數據庫設計過程中不斷修改、充實和完善的。
5). 下列描述中錯誤的是( )
A.派生類可以作為基類派生其他的子類
B.派生類繼承基類的所有數據成員
C.派生類可以有多個基類
D.派生類不能繼承一些函數成員
正確答案:B
6). 已知int m= 10;在下列定義引用的語句中,正確的是( )。
&x= m;
y= &m;
&.z;
&t=&m;
正確答案:A
答案解析:C++的引用是一種賦值、發送和返回複雜數據結構的方法,建立引用的格式為:類型一引用名一已定義的變量名。所以只有A選項是符合要求的。1). 下列敍述中正確的是( )
A.循環隊列中的元素個數隨隊頭指針與隊尾指針的變化而動態變化
B.循環隊列中的元素個數隨隊頭指針的變化而動態變化
C.循環隊列中的元素個數隨隊尾指針的變化而動態變化
D.以上説法都不對
正確答案:A
答案解析:在循環隊列中,用隊尾指針rear指向隊列中的隊尾元素,用排頭指針front指向排頭元素的.前一個位置。因此,從排頭指針front指向的後一個位置直到隊尾指針rear指向的位置之間所有的元素均為隊列中的元素。所以循環隊列中的元素個數與隊頭指針和隊尾指針的變化而變化,A正確。
2). 在C++中,cin是一個( )。
A.類
B.對象
C.模板
D.函數
正確答案:B
答案解析:C++提供了一套輸入、輸出流類的對象,它們是cin、cout和cerr,對應C語言中的3個文件指針stdin、ut、stderr,分別指向終端輸入、終端輸出和標準出錯輸出(也從終端輸出)。cin與>>一起完成輸入操作,cout、cerr與<< 一起完成輸出與標準錯誤輸出。
3). 已知char a;int b;float c;double d;則表達式a* b+c-d的結果為( )。
le
t
正確答案:A
答案解析:本題考查混合運算表達式類型,由表達式中具有最高優先級的類型所確定,所以答案為A。
4). 下列關於this指針的敍述中,正確的是( )。
A.任何與類相關的函數都有this指針
B.類的成員函數都有this指針
C.類的友元函數都有this指針
D.類的非靜態成員函數才有this指針
正確答案:D
答案解析:本題考查this指針的使用。類的每一個成員函數都有一個隱含的常量指針,即this指針。類的靜態成員函數不能含有this指針,因為this指針是一個指向本對象的指針。
5). 設有宏定義″#define IsDIV(k,n)<
A.判斷m是否能被5或者7整除
B.判斷m是否能被5和7整除
C.判斷m被5或者7整除是否餘1
D.判斷m被5和7整除是否都餘l
正確答案:D
答案解析:本題考查宏定義,宏定義IsDIV(k,n)的意思是如果k對n求模的餘數為l,其值等於1,否則其值等於0。本題中宏調用表達式是兩個宏調用之間的邏輯與運算,所以選項D正確。1). 派生類繼承基類的方式有( )
ic
ate
ected
D.以上都對
正確答案:D
2). 下列選項中不合法的標識符是( )。
t
C.&a
D.- 00
正確答案:C
答案解析:標識符的概念只能由數字、字母和下畫線組成,並且只能以字母和下畫線開頭,所以選項C不正確。
3). C源程序中不能表示的數制是( )。
A.二進制
B.八進制
C.十進制
D.十六進制
正確答案:A
答案解析:C語言源程序不能表示二進制,在C語言中,所有的數值型常量都帶有符號,所以整型數量只區別整型和長整型兩種形式,整型常量和長整型常量均可用十進制、八進制、十六進制3種形式表示,故選項A不正確。
4). 下列關於虛函數的描述中,正確的是( )。
A.虛函數是一個static類型的成員函數
B.虛函數是一個非成員函數
C.基類中採用virtual説明一個虛函數後,派生類中定義相同原型的函數時可不必加virtual説明
D.派生類中的虛函數與基類中相同原型的虛函數具有不同的參數個數或類型
正確答案:C
答案解析:在成員函數聲明的前面加上virtual關鍵字即把該函數聲明為虛函數。虛函數可以是另一個類的友元函數,但不是靜態成員函數。在派生類中可以重新定義從基類繼承下來的虛函數,在派生類中重新定義虛函數時,函數名、形參表和返回值類型必須保持不變。
5). 設一棵二叉樹中有3個葉子結點,有8個度為1的結點,則該二叉樹中總的結點數為( )
A.12
B.13
C.14
D.15
正確答案:B1). 下面説法正確的是( )。
A.內聯函數在運行時是將該函數的目標代碼插入每個調用該函數的地方
B.內聯函數在編譯時是將該函數的目標代碼插入每個調用該函數的地方
C.類的內聯函數必須在類體內定義
D.類的內聯函數必須在類體外通過加關鍵字inline定義
正確答案:B
答案解析:內聯函數用inline修飾,用於取代C語言中的宏定義。inline是建議機制而不是強制機制,也就是説,程序員可以指定任意函數為inline函數,但是編譯器會根據系統情況來決定是否將其inline處理。對於較大的函數,編譯器往往會取消其inline特性。inline函數的特點之一就是執行速度快,其實質是在編譯時將函數的目標代碼插入到每個調用該函數的地方,從而沒有出棧入棧、保護現場等開銷,提高了效率。在類體內定義的成員函數,自動被編譯器當做內聯函數處理,在類體外定義的成員函數,如果用inline修飾,則編譯器也認為是一種內聯建議。
2). 使用ifstream流類定義流對象並打開磁盤文件時,文件的隱含打開方式為( )。
::in
::out
::inlios::out
D.沒有默認
正確答案:D
答案解析:使用ifstream流類定義流對象並打開磁盤文件時,文件沒有默認的打開方式。其中IOS::in是為輸入而打開;1SO::out是為輸出而打開。
3). 下列關於棧敍述正確的是( )
A.棧頂元素最先能被刪除
B.棧頂元素最後才能被刪除
C.棧底元素永遠不能被刪除
D.棧底元素最先被刪除
正確答案:A
答案解析:棧是先進後出的數據結構,所以棧頂元素最後入棧卻最先被刪除。棧底元素最先入棧卻最後被刪除。所以選擇A。
4). 對長度為n的線性表進行順序查找,在最壞情況下所需要的比較次數為( )。
正確答案:C
答案解析:對線性表進行順序查找,最壞情況下,如果從表頭進行查找,要查找到表尾才能得出結果,因此需要比較n次。
5). 為了使類中的某個成員不能被類的對象通過成員操作符訪問,則不能把該成員的訪問權限定義為
ic
ected
ate
ic
正確答案:A
答案解析:本題考察點為類成員的訪問權限,public關鍵字修飾的類成員可以被類的對象通過成員操作符"."直接訪問,protected和private則不能,而static不能單獨修飾類的成員。
6). 在設計程序時,應採納的原則之一是
A.不限制goto語句的使用
B.減少或取消註解行
C.程序越短越好
D.程序結構應有助於讀者理解
正確答案:D
7). 單個用户使用的數據視圖的描述稱為
A.外模式
B.概念模式
C.內模式
D.存儲模式
正確答案:A