第 1 頁:選擇題 |
第 3 頁:程序改錯題 |
第 4 頁:簡單應(yīng)用題 |
第 5 頁:綜合應(yīng)用題 |
點擊查看:2015年計算機(jī)二級考試《C++》上機(jī)模考試卷匯總
一、選擇題
1算法的空間復(fù)雜度是指( )。
A.算法在執(zhí)行過程中所需要的計算機(jī)存儲空間
B.算法所處理的數(shù)據(jù)量
C.算法程序中的語句或指令條數(shù)
D.算法在執(zhí)行過程中所需要的臨時工作單元數(shù)
參考答案:A
參考解析:一個算法的空間復(fù)雜度,一般是指執(zhí)行這個算法所需要的內(nèi)存空間。
2每個C++程序中都必須有且僅有一個( )。
A.類B.預(yù)處理命令C.主函數(shù)D.語句
參考答案:C
參考解析:每個C++程序中都要有且僅有一個主函數(shù),該函數(shù)是程序的入口,而語句、預(yù)處理命令和函數(shù)及類在程序中都可以有多個。
3對長度為n的線性表排序,在最壞情況下,比較次數(shù)不是n(n-1)/2的排序方法是( )。
A.快速排序B.冒泡排序C.直接插入排序D.堆排序
參考答案:D
參考解析:首先知道有哪些排序的方法及各種排序方法在最壞情況下需要比較的次數(shù),冒泡排序n(n-1)/2、希爾排序0(n1.5)、簡單選擇排序n(n-1)/2、堆排序O(nl0g2n)。
4數(shù)據(jù)庫系統(tǒng)的三級模式不包括( )。
A.概念模式B.內(nèi)模式C.外模式D.數(shù)據(jù)模式
參考答案:D
參考解析:數(shù)據(jù)庫三級模式包括:概念模式、內(nèi)模式、外模式。
5SQL語言又稱為( )。
A.結(jié)構(gòu)化定義語言
B.結(jié)構(gòu)化控制語言
C.結(jié)構(gòu)化查詢語苦
D.結(jié)構(gòu)化操縱語言
參考答案:C
參考解析:SQL語言的全稱為StructuredQueryLanguage,它是一種介于關(guān)系代數(shù)與關(guān)系演算之間的結(jié)構(gòu)化查詢語言,是一種面向數(shù)據(jù)庫的通用數(shù)據(jù)處理語言規(guī)范。它包含數(shù)據(jù)查詢語言、數(shù)據(jù)操縱語言、數(shù)據(jù)定義語言和數(shù)據(jù)控制語言四個部分。
6數(shù)據(jù)處理的最小單位是( )。
A.數(shù)據(jù)B.數(shù)據(jù)元素C.數(shù)據(jù)項D.數(shù)據(jù)結(jié)構(gòu)
參考答案:C
7假定MyClass為一個類,那么下列的函數(shù)說明中,( )為該類的析構(gòu)函數(shù)。
A.void~MyClass();B.~MyC|ass(intn);C.MyClass();D.~MyClass();
參考答案:D
參考解析:C++語言中析構(gòu)函數(shù)為符號“~”加類名,且析構(gòu)函數(shù)沒有返回值和參數(shù),故前不加void關(guān)鍵字。所以正確的形式應(yīng)該是~MyClass()。第7題 筆記記錄我的筆記(0) | 精選筆記(1)選擇筆記標(biāo)簽:試題內(nèi)容(1)答案解析(0)
8有以下結(jié)構(gòu)體說明和變量的定義,且指針P指向變量a,指針q指向變量b。則不能把結(jié)點b連接到結(jié)點a之后的語句是( )。
structnode
{chardata;
structnode*next;
}a,b,*p=&a,*q=&b;
A.a.next=q;B.P.next=&b;C.p->next=&b;D.(*p).next=q;
參考答案:B
9若有表達(dá)式“(w)?(--x):(++y)”,則其中與w等價的表達(dá)式是( )。
A.w==1B.w==0C.W!=1D.W!=0
參考答案:D
參考解析:本題考查三目運算等。條件表達(dá)式的格式為a?b;c。它的含義是,當(dāng)a為真時,取b的值,否則取c的值。在C語言程序中“為真”即“不等于零”,“為假”即等于0。所以和w等價的表達(dá)式是w非零。
10有如下函數(shù)模板聲明:
template
TMax(Ta,Tb){return(a>b)?a:b;}
下列對函數(shù)模板Max( )的調(diào)用中錯誤的是( )。
A.Max(3.5,4.5)B.Max(3.5,4)C.Max(35,4.5)D.Max(3.5,4)
參考答案:B
參考解析:本題考查函數(shù)模板的引用。引用模板函數(shù)和引用一般函數(shù)在語法形式上基本相同。需要注意的是,說明一個函數(shù)模板后,當(dāng)編譯系統(tǒng)發(fā)現(xiàn)有一個對應(yīng)的函數(shù)調(diào)用時,將根據(jù)實參中的類型來確認(rèn)是否調(diào)用函數(shù)模板中的對應(yīng)形參。本題選項B中,編譯系統(tǒng)從第一個參數(shù)“3.5”獲得信息“double型數(shù)據(jù)”和從第二個參數(shù)獲得信息“int型數(shù)據(jù)”,兩者矛盾。
11C++語言中關(guān)于構(gòu)造函數(shù)的說法正確的是( )。
A.構(gòu)造函數(shù)的函數(shù)名不必和類名相同
B.構(gòu)造函數(shù)只能有一個
C.每個類必定有構(gòu)造函數(shù)
D.構(gòu)造函數(shù)必有返回值
參考答案:C
參考解析:本題考查構(gòu)造函數(shù)的概念。構(gòu)造函數(shù)可以被重載,函數(shù)名必須和類名相同;構(gòu)造函數(shù)可以有一個,也可以有多個;構(gòu)造函數(shù)沒有返回值。
12下列描述中,錯誤的是( )。
A.公有繼承時基類中的公有成員在派生類中仍是公有成員
B.公有繼承時基類中的保護(hù)成員在派生類中仍是保護(hù)成員
C.保護(hù)繼承時基類中的公有成員在派生類中仍是公有成員
D.保護(hù)繼承時基類中的保護(hù)成員在派生類中仍是保護(hù)成員
參考答案:C
參考解析:保護(hù)繼承時,類成員的訪問級別只能降低為保護(hù)模式,因此即使是基類的公有成員也被縮小為保護(hù)模式。
13結(jié)構(gòu)化程序所要求的基本結(jié)構(gòu)不包括( )。
A.順序結(jié)構(gòu)B.GOTO跳轉(zhuǎn)C.選擇(分支)結(jié)構(gòu)D.重復(fù)(循環(huán))結(jié)構(gòu)
參考答案:B
參考解析:結(jié)構(gòu)化程序設(shè)計的三種結(jié)構(gòu)是順序、分支和循環(huán),不包括goto跳轉(zhuǎn),它只是分支結(jié)構(gòu)的一種,也是一個關(guān)鍵字。
14在E—R圖中,用來表示實體聯(lián)系的圖形是( )。
A.橢圓圖B.矩形C.菱形D.三角形
參考答案:C
參考解析:E—R圖中用矩形表示實體(等同于表),用橢圓形表示實體的屬性(等同于表中字段),用菱形表示實體關(guān)系(等同于外鍵)。
15下列數(shù)據(jù)結(jié)構(gòu)中,屬于非線性結(jié)構(gòu)的是( )。
A.循環(huán)隊列B.帶鏈隊列C.二叉樹D.帶鏈棧
參考答案:C
參考解析:隊列是一種允許在一端進(jìn)行插入,而在另一端進(jìn)行刪除的線性表。棧也是一種特殊的線性表,其插入與刪除只能在線性表的一端進(jìn)行。
16對長度為n的線性表進(jìn)行順序查找,在最壞情況下所需要的比較次數(shù)為( )。
A.log2nB.n/2C.nD.n+1
參考答案:C
參考解析:對線性表進(jìn)行順序查找,最壞情況下,如果從表頭進(jìn)行查找,要查找到表尾才能得出結(jié)果,因此需要比較n次。
17下面程序的運行結(jié)果為( )。#include
voidswap(int&a,intb)
{
inttemp;
temp=a++;
a=b:
b=temp:
}
voidmain()
{
inta=2,b=3;
swap(a,b);
cout<
}
A.2,3B.3,2C.2,2D.3,3
參考答案:D
參考解析:本題考查引用調(diào)用,因為函數(shù)swap引用調(diào)用參數(shù)a,所以在swap函數(shù)中a的變化會改變主函數(shù)中a的值,即a自加1。但b的值并未改變。
18若有以下程序:
#include
usingnamespacestd;
classBase
{public:
Base()
{x=0;}
intx;};
classDerivedl:virtualpublicBase
{public:
Derivedl()
{x=10;}};
classDerived2:virtua11publicBase
{public:
Derived2()
{x=20;}};
classDerived:publicDerivedl,protectedDerived2{};intmain()
{Derivedobj;
cout<
return0;}
該程序運行后的輸出結(jié)果是( )。
A.20B.30C.10D.0
參考答案:A
參考解析:本題考查虛基類的應(yīng)用。雖然Derivedl和Derived2都是由共同的基類x派生而來的,但由于引入了虛基類,使得它們分別對應(yīng)基類的不同副本。這時數(shù)據(jù)成員x只存在一份副本,不論在類Derivedl中修改,還是在Derived2中修改,都是直接對這唯一副本進(jìn)行操作。本題程序執(zhí)行語句“Derivedobj;”時.就會先調(diào)虛基類Base的構(gòu)造函數(shù),使得X=0,然后執(zhí)行類Derivedl的構(gòu)造函數(shù)使得x=10,再執(zhí)行類Derived2的構(gòu)造函數(shù),使得x=20。最后輸出x的值為20。
19下列選項中不合法的標(biāo)識符是( )。
A.printB.FORC.&aD.-00
參考答案:C
參考解析:標(biāo)識符的概念只能由數(shù)字、字母和下畫線組成,并且只能以字母和下畫線開頭,所以選項C不正確。
20考慮函數(shù)原型voidtest(inta,intb=7,charz='*'),下面的函數(shù)調(diào)用中,屬于不合法調(diào)用的是( )。
A.test(5);B.test(5,8);C.test(6,'#');D.test(0,0,'*');
參考答案:C
參考解析:題中函數(shù)聲明帶有默認(rèn)參數(shù),那么在C選項的調(diào)用中,將會把字符型實參#賦值給整型形參b,這不符合參數(shù)傳遞規(guī)則。
相關(guān)推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |