第 1 頁:選擇題 |
第 3 頁:基本操作題 |
第 4 頁:簡單應用題 |
21 [單選題] 下列關于類模板的敘述中,正確的是( )。
A.類模板實例化時,編譯器會根據給出的模板實參生成一個類
B.類模板中的成員函數沒有返回值
C.類模板的主要作用是生成抽象類
D.類模板中的數據成員具有同樣類型
參考答案:A
參考解析:
類模板在引用實際模板類類型時實例化,編譯器會根據給出的模板實參生成一個類的定義,選項A正確;類模板中的成員函數同普通類的成員函數一樣,也可以有返回值,返回值類型可以是模板形參類型,也可以是具體類型,選項8錯誤;類模板的主要作用是生成類,而不是生成抽象類,選項C錯誤;類模板中的成員類型可以是模板形參類型,也可以是具體類型,選項D錯誤。本題答案為A選項。
22 [單選題] 結構化程序的三種基本結構是( )。
A.遞歸、迭代和回溯
B.過程、函數和子程序
C.順序、選擇和循環(huán)
D.調用、返回和選擇
參考答案:C
參考解析:
僅使用順序、選擇、循環(huán)三種基本控制結構就足以表達出各種其他形式結構的程序設計方法。故本題答案為C選項。
23 [單選題] 有如下類聲明:
下列關于getValue成員函數的定義中,正確的是( )。
A.SAMPLE::setValue(int nO){n=n0;}
B.void SAMPLE::setValue(int nO){n=n0;}
C.void setValue(int nO){n=n0;}
D.setValue(int nO){n=n0;}
參考答案:B
參考解析:
本題考查在類外定義類的成員函數,需要使用作用域限定符“::”,屬于基礎知識,本題答案為B。
24 [單選題] 下列關于基類和派生類關系的敘述中,正確的是( )。
A.每個類最多只能有一個直接基類
B.派生類中的成員可以訪問基類中的任何成員
C.基類的構造函數必須在派生類的構造函數體中調用
D.派生類除了繼承基類的成員,還可以定義新的成員
參考答案:D
參考解析:
本題考查派生類與基類的關系,派生類可以有多個直接基類,而派生類有三種繼承方式,在私有繼承中,派生類的成員并不能訪問基類的成員。如果基類中定義了缺省構造函數或根本沒有定義任何一個構造函數時,在派生類構造函數的定義中可以省略對基類構造函數的調用。所以本題答案為D。
25 [單選題] 有如下程序段:
其中會產生編譯錯誤的語句是( )。
A.④
B.③
C.②
D.①
參考答案:A
參考解析:
本題考查指針和引用。①為引用,使用正確;④中&r表示一個地址,而*P已經是一個值了,不能將一個指針賦值給一個值,所以編譯錯誤。
26 [單選題] 軟件測試的目的是( )。
A.評估軟件可靠性
B.發(fā)現并改正程序中的錯誤
C.改正程序中的錯誤
D.發(fā)現程序中的錯誤
參考答案:D
參考解析:
軟件測試是為了發(fā)現錯誤而執(zhí)行程序的過程,測試要以查找錯誤為中心,而不是為了演示軟件的正確功能。不是為了評估軟件或改正錯誤。
27 [單選題] 為了使用setw設置輸出寬度,必須在程序中包含頭文件( )。
A.iostream
B.iomainp
C.fstream
D.string
參考答案:B
參考解析:
C++中,格式控制符在頭文件iomanip中定義,所以要使用格式控制符setw,必須包含iomanip。故本題答案為B選項。
28 [單選題] 下列語句中錯誤的是( ):
A.const int a;
B.const int a=10;
C.const int*point=0;
D.const int*point=new int(10):
參考答案:A
參考解析:
const是一個C++語言的關鍵字,它限定一個變量不允許被改變。使用const在一定程度上可以提高程序的安全性和可靠性。限定符聲明變量只能被讀,必須初始化。A選項沒有初始化,B、C、D選項都正確。
29 [單選題] 對c++編譯器區(qū)分重載函數無任何意義的信息是( )。
A.參數類型
B.參數個數
C.返回值類型
D.常成員函數關鍵字const
參考答案:C
參考解析:
所謂函數重載是指同一個函數名可以對應多個函數的實現。每種實現對應一個函數體,這些函數的名字相同,其參數類型或個數不同,但不能出現函數返回值類型不同而參數類型和個數完全相同的重載。所以本題答案為C。
30 [單選題] 下面關于數組的初始化正確的是( ):
參考答案:A
參考解析:
本題考查的是字符數組的初始化。選項B中用3個元素初始化大小為2的數組,越界了;選項C中應該是2行3列的數組,題中使用3行2列初始化;選項D中數組合后應用方括號。
31 [單選題] 對類成員訪問權限的控制,是通過設置成員的訪問控制屬性實現的,下列不是訪問控制屬性的是( )。
A.公有類型
B.私有類型
C.保護類型
D.友元類型
參考答案:D
參考解析:
所謂的訪問控制只包含公有類型、私有類型和保護類型3種,友元可以是一個函數,也可以是一個類。
32 [單選題] 下列語句中,未起到定義作用的是( )。
A.char ch;
B.void fun( );
C.int Y=2015;
D.typedef double price;
參考答案:B
參考解析:
選項A定義一個字符變量ch;選項C定義整型Y,并初始化為2015;選項D定義一種類型名price,該類型等價于double;選項B聲明了函數fun,該函數沒有參數,沒有返回值,聲明不是定義,選項B錯誤。故本題答案為B選項。
33 [單選題] 若已經聲明了函數原型“void fun(int a,double b=0.0)”,則下列重載函數聲明中正確的是( )。
A.void fun(int a=90,double b=0.0);
B.int fun(int a,double B.;
C.void fun(double a,int B.;
D.bool fun(int a,double b=0.0);
參考答案:C
參考解析:
函數不能僅僅基于不同的返回類型而實現重載,選項B中只有返回值不同,所以選項B、D錯誤;出現在相同作用域中的兩個函數,如果具有相同的名字而形參表不同,則稱為重載函數,形參表的不同,是指形參個數或類型不同;默認實參并沒有改變形參的類型和個數,所以僅僅基于默認實參,也不能實現函數重載,選項A錯誤;選項C中形參對應的類型不同;本題答案為C選項。
34 [單選題] 負責數據庫中查詢操作的數據庫語言是( )。
A.數據定義語言
B.數據管理語言
C.數據操縱語言
D.數據控制語言
參考答案:C
參考解析:
數據定義語言:負責數據的模式定義與數據的物理存取構建;數據操縱語言:負責數據的操縱,包括查詢及增、刪、改等操作;數據控制語言:負責數據完整性、安全性的定義與檢查以及并發(fā)控制、故障恢復等功能。
35 [單選題] 定義學生、教師和課程的關系模式S(S#,Sn,Sd,De,SA.(其屬性分別為學號、姓名、所在系、所在系的系主任、年齡);C(c#,Cn,P#)(其屬性分別為課程號、課程名、先修課);SC(S#,C#,G)(其屬性分別為學號、課程號和成績),則該關系為( )。
A.第二范式
B.第一范式
C.第三范式
D.BCNF范式
參考答案:A
參考解析:
范式是符合某一種級別的關系模式的集合。關系數據庫中的關系必須滿足一定的要求,滿足不同程度要求的為不同范式。目前關系數據庫有六種范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、Boyce-Codd范式(BCNF)、第四范式(4NF)和第五范式(5NF)。滿足最低要求的范式是第一范式(1NF)。在第一范式的基礎上進一步滿足更多要求的稱為第二范式(2NF),其余范式以次類推。一般說來,數據庫只需滿足第三范式(3NF)就行了。 第一范式:主屬性(主鍵)不為空且不重復,字段不可再分(存在非主屬性對主屬性的部分依賴)。
第二范式:如果關系模式是第一范式,每個非主屬性都沒有對主鍵的部分依賴。
第三范式:如果關系模式是第二范式,沒有非主屬性對主鍵的傳遞依賴和部分依賴。
BCNF范式:所有屬性都不傳遞依賴于關系的任何候選鍵。
題目中關系模式滿足第二范式,但在關系模式S中,學生所在系依賴于學號(s#→Sd),但系本身確定了系主任(Sd→Dc),存在傳遞依賴,不滿足第三范式。故本題答案為A選項。
36 [單選題] 對于一個類定義,下列敘述中錯誤的是( )。
A.如果沒有定義拷貝構造函數,編譯器將生成一個拷貝構造函數
B.如果沒有定義缺省的構造函數,編譯器一定將生成一個缺省的構造函數
C.如果沒有定義構造函數,編譯器將生成一個缺省的構造函數和一個拷貝構造函數
D.如果已經定義了構造函數和拷貝構造函數,編譯器不會生成任何構造函數
參考答案:B
參考解析:
本題考查構造函數和復制構造函數,如果沒有定義構造函數,編譯器將生成一個缺省的構造函數和一個拷貝構造函數,如果已經定義了構造函數和拷貝構造函數,編譯器不會生成任何構造函數。如果沒有定義拷貝構造函數,編譯器將生成一個拷貝構造函數。
37 [單選題] 某二叉樹共有399個結點,其中有199個度為2的結點,則該二叉樹中的葉子結點數為( )。
A.不存在這樣的二叉樹
B.200
C.198
D.199
參考答案:B
參考解析:
根據二又樹的基本性質,對任何一棵二叉樹,度為0的結點(即葉子結點)總是比度為2的結點多一個。題目中度為2的結點為199個,則葉子結點為l99+1=200。故本題答案為B選項。
38 [單選題] 下列關于C++類的敘述中,錯誤的是( )。
A.類與類之間可以互為友元
B.類用于描述事物的屬性和對事物的操作
C.類與類之間不能有組合關系
D.類與類之間可以通過封裝而具有相對獨立性
參考答案:C
參考解析:
友元機制允許一個類將對其非公有成員的訪問權授予指定的函數或類,類和類之間可以互為友元關系,選項A正確;類代表某一種事物(對象)的共性和特征,用于描述事物的屬性(數據成員)和對事物的操作(成員函數),選項B正確;類和類之間可以通過封裝而具有相對獨立性,選項D正確;類和類之 間的關系有:繼承、實現、依賴、關聯、組合、聚合等,選項c錯誤。本題答案為c選項。
39 [單選題] 下列語句中,能夠進行正確賦值的是( )。
A.char str=’abcde’;
B.char str=”abcde”;
C.char str[4]=”abcde”;
D.char str[6]=”abode”;
參考答案:D
參考解析:
字符常量是單個字符,單引號’’中只能有1個字符,選項A錯誤;字符串常量不能賦給字符變量,選項B錯誤;常量字符串“abcde”包含5個字符和1個空字符’\0’,需要6個字節(jié)存放,選項C錯誤;選項D正確。本題答案為D選項。
40 [單選題] 已知函數FA詞用函數FB,若要把這兩個函數定義在同一個文件中.則( )。
A.FA必須定義在FB之前
B.FB必須定義在FA之前
C.若FA定義在FB之后,則FA的原型必須出現在FB的定義之前
D.若FB定義在FA之后,則FB的原型必須出現在FA的定義之前
參考答案:D
參考解析:
如果使用用戶自己定義的函數,而該函數與調用它的函數(即主調用函數)在同一程序單元中,且位置在主調用函數之后,則必須在調用此函數之前對被調用的函數作聲明。
微信搜索"考試吧"了解更多考試資訊、下載備考資料
相關推薦: