國(guó)家二級(jí)(C++)筆試模擬試卷9_第1頁(yè)
國(guó)家二級(jí)(C++)筆試模擬試卷9_第2頁(yè)
國(guó)家二級(jí)(C++)筆試模擬試卷9_第3頁(yè)
國(guó)家二級(jí)(C++)筆試模擬試卷9_第4頁(yè)
國(guó)家二級(jí)(C++)筆試模擬試卷9_第5頁(yè)
已閱讀5頁(yè),還剩89頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

眼家二級(jí)(C++)筆試模擬試卷第1套

一、公共基礎(chǔ)選擇題(本題共70題,每題7.0分,共

10分。)

1、為了培養(yǎng)良好的程序設(shè)計(jì)風(fēng)格,下列描述中正確的是

A、程序應(yīng)簡(jiǎn)單、清晰、可讀性好

B、符號(hào)名的命名只要符合語(yǔ)法

C、充分考慮程序的執(zhí)行效率

D、程序的注釋可有可無(wú)

標(biāo)準(zhǔn)答案:A

知識(shí)點(diǎn)解析:良好的程序設(shè)計(jì)風(fēng)格主要包括設(shè)計(jì)的風(fēng)格、語(yǔ)言運(yùn)用的風(fēng)格、程序文

本的風(fēng)格和輸入輸出的風(fēng)格。設(shè)計(jì)的風(fēng)格主要體現(xiàn)在三個(gè)方面:結(jié)構(gòu)要清晰:思

路要清晰,在設(shè)計(jì)程序時(shí)應(yīng)遵循“簡(jiǎn)短樸實(shí)”的原則,切忌賣弄所謂的“技巧”。語(yǔ)

言運(yùn)用的風(fēng)格主要體現(xiàn)在兩個(gè)方面;選擇合適的程序設(shè)計(jì)語(yǔ)言以及不要濫用語(yǔ)言中

的某些特色。特別耍注意,盡量不用靈活性大、不易理解的語(yǔ)句成分。程序文本

的風(fēng)格主要體現(xiàn)在四個(gè)方面:注意程序文本的易讀性;符號(hào)要規(guī)范化;在程序中加

必要的注釋;在程序中要合理地使用分隔符等。輸入輸出的風(fēng)格主要體現(xiàn)在三個(gè)

方面:對(duì)輸出的數(shù)據(jù)應(yīng)該加上必要的說(shuō)明:在需要輸入數(shù)據(jù)時(shí),應(yīng)該、給出必要的

提示,以適當(dāng)?shù)姆绞綄?duì)瑜入數(shù)據(jù)進(jìn)行檢驗(yàn),以確認(rèn)其有效性??傊?,程序設(shè)計(jì)的

風(fēng)格應(yīng)該強(qiáng)調(diào)簡(jiǎn)單和清晰,程序必須是可以理解的,強(qiáng)調(diào)“清晰第一,效率第二”。

由上所述,符號(hào)名的命名不僅要符合語(yǔ)法,而且符號(hào)名的命名應(yīng)具有一定實(shí)際含

義,以便于對(duì)程序功能的理解。因此,選項(xiàng)B中的說(shuō)法是錯(cuò)誤的。由于程序設(shè)計(jì)

的風(fēng)格強(qiáng)調(diào)的是“清晰第一,效率第二”,而不是效率第一。因此,選項(xiàng)C中的說(shuō)

法也是錯(cuò)誤的。程序中的注釋部分雖然不是程序的功能,計(jì)算機(jī)在執(zhí)行程序時(shí)也

不會(huì)執(zhí)行它,但不能錯(cuò)誤地認(rèn)為注釋是可有可無(wú)的部分.在程序中加入正確的注釋

能夠幫助讀者理解程序,注釋是提高程序可讀性的重要手段。因此,選項(xiàng)D中的

說(shuō)法也是錯(cuò)誤的。

2、在最壞情況下,下列各排序方法的比較次數(shù)正確的是

A、冒泡排序?yàn)閚/2

B、冒泡排序?yàn)閚(n+l)/2

C、快速排序?yàn)閚/2

D、快速排序?yàn)閚(n-l)/2

標(biāo)準(zhǔn)答案:D

知識(shí)點(diǎn)解析:在最壞情況下,冒泡排序的比較次數(shù)為n(n-l/2;快速排序的比較次

數(shù)也為n(n-1)/2。

3、按“先進(jìn)后出”原則組織數(shù)據(jù)的結(jié)構(gòu)是

A、有序表

B、棧

C、隊(duì)列

D、二叉樹(shù)

標(biāo)準(zhǔn)答案:B

知識(shí)點(diǎn)解析:棧是按“先進(jìn)后出”原則組織數(shù)據(jù)的結(jié)構(gòu),隊(duì)列是按“先進(jìn)先出”原則組

織數(shù)據(jù)的結(jié)構(gòu);而有序表與二叉樹(shù)均不是。

4、對(duì)下列二叉樹(shù)進(jìn)行中序遍歷的結(jié)果是

A、ZBTYCPXA

B、ATBZXCYP

C、ZBTACYXP

D、ATBZXCPY

標(biāo)準(zhǔn)答案:C

知識(shí)點(diǎn)解析?:按照二義樹(shù)中序遍歷的方法:在訪問(wèn)根結(jié)點(diǎn)、遍歷左子樹(shù)與遍歷右手

樹(shù)這三者中:首先遍歷左子樹(shù),然后訪問(wèn)根結(jié)點(diǎn),最后遍歷右子樹(shù);并且,在遍歷

左、右子樹(shù)時(shí),仍然先遍歷左子樹(shù),然后訪問(wèn)根結(jié)點(diǎn),最后遍歷右子樹(shù)。對(duì)本題中

的二義樹(shù)進(jìn)行中序遍歷的結(jié)果應(yīng)是:TZBACYXP。

5、下列敘述中正確的是

A、數(shù)據(jù)的邏輯結(jié)構(gòu)與存儲(chǔ)結(jié)構(gòu)必定是一一對(duì)應(yīng)的

B、由于計(jì)算機(jī)存儲(chǔ)空間是向量式的存儲(chǔ)結(jié)構(gòu),因此,數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)一定是線性

結(jié)構(gòu)

C、程序設(shè)計(jì)語(yǔ)言中的數(shù)組一般是順序存儲(chǔ)結(jié)構(gòu),因此,利用數(shù)組只能處理線性結(jié)

構(gòu)

D、以上三種說(shuō)法都不對(duì)

標(biāo)準(zhǔn)答案:D

知識(shí)點(diǎn)解析:?般來(lái)說(shuō),?種數(shù)據(jù)的邏輯結(jié)構(gòu)根據(jù)需要可以衣示成多種存儲(chǔ)結(jié)構(gòu),

因此,數(shù)據(jù)的邏輯結(jié)構(gòu)與存儲(chǔ)結(jié)構(gòu)不一定是一一對(duì)應(yīng)的。選項(xiàng)A中的說(shuō)法是錯(cuò)誤

的。雖然計(jì)算機(jī)的存儲(chǔ)空間是向量式的存儲(chǔ)結(jié)構(gòu),但由于一種數(shù)據(jù)的邏輯結(jié)構(gòu)根據(jù)

需要可以表示成多種存儲(chǔ)結(jié)構(gòu),例如,線性鏈表是線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)。?般來(lái)

說(shuō),在線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)中,各數(shù)據(jù)結(jié)點(diǎn)的存儲(chǔ)序號(hào)是不連續(xù)的,并且各結(jié)點(diǎn)

在存儲(chǔ)空間中的位置關(guān)系與邏輯關(guān)系也不一致。在線性鏈表中,各數(shù)據(jù)元素之間的

前后件關(guān)系是由各結(jié)點(diǎn)的指針域來(lái)指示的。因此,數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)不一定是線性結(jié)

構(gòu)。選項(xiàng)B中的說(shuō)法也是錯(cuò)誤的。雖然程序設(shè)計(jì)語(yǔ)言中的數(shù)組一般是順序存儲(chǔ)結(jié)

構(gòu),但是,利用數(shù)組也能處理非線性結(jié)構(gòu)。例如,滿二叉樹(shù)與完全二叉樹(shù)是非線性

結(jié)構(gòu),但對(duì)于滿二叉樹(shù)與完全二叉樹(shù)來(lái)說(shuō),根據(jù)完全二叉樹(shù)的性質(zhì)6,可以按層序

進(jìn)行順序存儲(chǔ),即利用程序設(shè)計(jì)語(yǔ)言中的數(shù)組來(lái)存儲(chǔ),這樣,不僅節(jié)省了存儲(chǔ)空

間,又能方便地確定每一個(gè)結(jié)點(diǎn)的父結(jié)點(diǎn)與左右子結(jié)點(diǎn)的位置。對(duì)于一般的二叉樹(shù)

來(lái)說(shuō),也可以將二叉樹(shù)中每一個(gè)結(jié)點(diǎn)的左指針、右指針以及數(shù)據(jù)域分別用三個(gè)數(shù)組

中的對(duì)應(yīng)元素來(lái)存儲(chǔ),即實(shí)際上也是利用了程序設(shè)計(jì)語(yǔ)言中的數(shù)組來(lái)處理二叉樹(shù)這

樣的非線性結(jié)構(gòu)。選項(xiàng)C中的說(shuō)法也是錯(cuò)誤的。綜上所述,選項(xiàng)A、B與C中的

說(shuō)法都是錯(cuò)誤的。

6、下列敘述中正確的是

A、接口復(fù)雜的模塊,其耦合程度一定低

B、耦合程度弱的模塊,其內(nèi)聚程度一定高

C、耦合程度弱的模塊,其內(nèi)聚程度一定低

D、上述三種說(shuō)法都不對(duì)

標(biāo)準(zhǔn)答案:B

知識(shí)點(diǎn)解析:影響模塊之間耦合的主要因素有兩個(gè):一是模塊之間的連接形式.二

是模塊接口的復(fù)雜性。一般來(lái)說(shuō),接口復(fù)雜的模塊,其耦合程度要比接口簡(jiǎn)單的的

模塊強(qiáng)。因此,選項(xiàng)A中的說(shuō)法是錯(cuò)誤的。耦合和內(nèi)聚是一個(gè)問(wèn)題的兩個(gè)方面,

耦合程度弱的模塊,其內(nèi)聚程度一定高。因此,選項(xiàng)C和D中的說(shuō)法也是錯(cuò)誤

的;選項(xiàng)B中的說(shuō)法是正確的。

7、軟件調(diào)試的目的是

A、發(fā)現(xiàn)錯(cuò)誤

B、改正錯(cuò)誤

C、改善軟件的性能

D、挖掘軟件的潛能

標(biāo)準(zhǔn)答案:B

知識(shí)點(diǎn)解析:軟件調(diào)試的目的是改正程序中的錯(cuò)誤。

8、下列敘述中正確的是

A、實(shí)體集之間一對(duì)一的聯(lián)系實(shí)際上就是二一對(duì)應(yīng)的關(guān)系

B、關(guān)系模型只能處理實(shí)體集之間一對(duì)一的聯(lián)系

C、關(guān)系模型屬于格式化模型

D、以上三種說(shuō)法都不對(duì)

標(biāo)準(zhǔn)答案:D

知識(shí)點(diǎn)解析:實(shí)體集之間一對(duì)一的聯(lián)系不一定是一一對(duì)應(yīng)的關(guān)系。例如,在一個(gè)教

室中,實(shí)體集“學(xué)生”與實(shí)體集“座位”之間是一對(duì)一的聯(lián)系。因?yàn)閷?shí)體集“學(xué)生”中的

每一個(gè)學(xué)生最多與實(shí)體集“座位”中的一個(gè)座位有聯(lián)系(學(xué)生坐在該座位上);并

且.實(shí)體集“座位”中中的每一個(gè)座位也最多與實(shí)體集"學(xué)生''中的一個(gè)學(xué)生有聯(lián)系

(座位上坐著該學(xué)生)。但該教室中的學(xué)生與座位之間不一定是一一對(duì)應(yīng)的關(guān)系,因

為有可能某些座位是空的,沒(méi)有學(xué)生去坐。因此,選項(xiàng)A中的說(shuō)法是錯(cuò)誤的。在

關(guān)系模型中,由于使用表格數(shù)據(jù)來(lái)表示實(shí)體之間的聯(lián)系,因此,可以直接描述多對(duì)

多的實(shí)體聯(lián)系。因此,選項(xiàng)B中的說(shuō)法也是錯(cuò)誤的。關(guān)系模型是與格式化模型完

全不同的數(shù)據(jù)模型,它與層次模型、網(wǎng)狀模型相比有著本質(zhì)的區(qū)別。關(guān)系模型是用

表格數(shù)據(jù)來(lái)表示實(shí)體本身及其相互之間的聯(lián)系,它是建立在數(shù)學(xué)理論基礎(chǔ)上的。因

此,選項(xiàng)C中的說(shuō)法也是錯(cuò)誤的。

9、數(shù)據(jù)庫(kù)概念設(shè)計(jì)中由分散到集中的設(shè)計(jì)方法是

A、視圖設(shè)計(jì)

B、視圖集成設(shè)計(jì)

C、集中式模式設(shè)計(jì)

D、分散式模式設(shè)計(jì)

標(biāo)準(zhǔn)答案:B

知識(shí)點(diǎn)解析?:數(shù)據(jù)庫(kù)概念設(shè)計(jì)中由分散到集中的設(shè)計(jì)方法是視圖集成設(shè)計(jì)。

10、下列敘述中正確的是

A、程序設(shè)計(jì)就是編制程序

B、程序的測(cè)試必須由程序員自己去完成

C、程序經(jīng)調(diào)試改錯(cuò)后近應(yīng)進(jìn)行再測(cè)試

D、程序經(jīng)調(diào)試改錯(cuò)后不必進(jìn)行再測(cè)試

標(biāo)準(zhǔn)答案:C

知識(shí)點(diǎn)解析:程序設(shè)計(jì)并不單指編程,而是有很多步驟,編程只是其中的一步,選

項(xiàng)A是錯(cuò)誤的,程序測(cè)試工作應(yīng)避免由程序員自己去完成,選項(xiàng)B也是錯(cuò)誤的;

程序經(jīng)調(diào)試改錯(cuò)后還應(yīng)進(jìn)行再測(cè)試,選項(xiàng)C是正確的,選項(xiàng)D是錯(cuò)誤的。

二、選擇題(本題共25題,每題1.0分,共25分。)

11、設(shè)char型變量x中的值為10100111,則表達(dá)式(2+x)-(?3)的值是

A、10101001

B、10101000

C、11111101

D、1010101

標(biāo)準(zhǔn)答案:D

知識(shí)點(diǎn)解析:本題考查二進(jìn)制操作的兒種形式,需要考生熟練掌握整數(shù)向二進(jìn)制的

轉(zhuǎn)換和求反、異或等操作。

12、以下敘述中不正確的是

A、C++語(yǔ)言中的文本文件以ASCII碼形式存儲(chǔ)數(shù)據(jù)

B、C++語(yǔ)言中,對(duì)二進(jìn)制文件的訪問(wèn)速度比文本文件快

C、C++語(yǔ)言中,隨機(jī)讀寫(xiě)方式不適用于文本文件

D、C++語(yǔ)言中,順序讀寫(xiě)方式不適用于二進(jìn)制文件

標(biāo)準(zhǔn)答案:C

知識(shí)點(diǎn)解析:本題考查C++語(yǔ)言中文件的概念,包括二進(jìn)制文件和文本文件,對(duì)

不同的文件類型采用不同的讀寫(xiě)方式。

13、若已定義inta=256,執(zhí)行語(yǔ)句cout<Vhex(<a;的結(jié)果是

A、100

B、256

C、ffe

D、tf

標(biāo)準(zhǔn)答案:A

知識(shí)點(diǎn)解析:本題考查流操作中格式的控制,hex的作用是將隨后的輸出數(shù)按照十

六進(jìn)制形式輸出。

14、執(zhí)行下列程序的結(jié)果是main。{floatx=l,y;y=++x*++x;cout<<y<

<endl:}

A、9

B、6

C、1

D、程序有錯(cuò)誤

標(biāo)準(zhǔn)答案:A

知識(shí)點(diǎn)解析:本題比較簡(jiǎn)單,考查自增運(yùn)算符的運(yùn)算規(guī)則以及運(yùn)算符優(yōu)先級(jí)的知識(shí)

點(diǎn)。自增運(yùn)算符的優(yōu)先級(jí)高于乘法運(yùn)算符的優(yōu)先級(jí)。

15、下面程序的輸出結(jié)果是rnain(){inta=15,b=21,m=0;switch(a%3){case0,

m++;break;case1:m++;switch(b%2){default:m++;

case0:m++;break;|}cout<<m<<endl)

A、1

B、2

C、3

D、4

標(biāo)準(zhǔn)答案:A

知識(shí)點(diǎn)解析:本題考查switch語(yǔ)句的嵌套。實(shí)際上,只要考生按照順序進(jìn)行分析

可以發(fā)現(xiàn)里層嵌套的switch語(yǔ)句根本不用分析,因?yàn)閳?zhí)行流程根本不能到達(dá)那

里。

16>有以卜程序intfl(intx,inty){returnx>y?x:y;)intf2(intx,inty){returnx>y?

y:x;)main(){inta=4,b=3,c=5,d,e,f;d=fl(a,B);d=fl(d,C);e=f2(a,B);e=f2(e,C);

f=a+b+c-d-e;coutVVdVV","VVfVV","VVeVVendl;}執(zhí)行后輸出結(jié)果是

A、3,4,5

B、5,3,4

C>5,4,3

D、3,5,4

標(biāo)準(zhǔn)答案:C

知識(shí)點(diǎn)解析:本題只需要考生按照?qǐng)?zhí)行順序分析即可得出正確答案為Co

17、有以下程序voidf(intx,inty){intt,if(x<y){t=x;x=y;t;))main(){inta=4,

b=3,c=5;f(a,B);f(a,C);f(b,C);cout<<a<<H,n<<b<<n,n<<c

VVendl;}執(zhí)行后輸出結(jié)果是

A、3,4,5

B、5,3,4

C、5,4,3

D、4,3,5

標(biāo)準(zhǔn)答案:D

知識(shí)點(diǎn)解析:考生根據(jù)分析可以得知f函數(shù)的功能是交換兩個(gè)變量的值。表明看起

來(lái),在main函數(shù)中,使用三次f函數(shù)完成三個(gè)變量的交換。真的如此么?只要考生

注意到f函數(shù)采用值傳遞,而值傳遞的缺點(diǎn)就是不會(huì)改變形參的值,因此,上述操

作根本無(wú)法改變?cè)瓉?lái)三個(gè)變量的值!故三個(gè)變量的值依然保持不變。

18、與數(shù)學(xué)式子句對(duì)應(yīng)的C++語(yǔ)言表達(dá)式是

A、3*xAn/(2*x-l)

B、3*x**n/(2*x-l)

C^3*pow(x,n)*(l/(2*x-l))

D、3*pow(n,x)/(2*x-l)

標(biāo)準(zhǔn)答案:C

知識(shí)點(diǎn)解析:本題考查考生將數(shù)學(xué)表達(dá)式翻譯成C++語(yǔ)句的能力。

19、若有以下程序:main(){intk=2,i=2,m;m=(k+=i*=k);cout<<

m<<","VVi<<endl;}執(zhí)行后的輸出結(jié)果是

A、8,6

B、8,3

C、6,4

D、7,4

標(biāo)準(zhǔn)答案:C

知識(shí)點(diǎn)解析:首先進(jìn)行書(shū)號(hào)內(nèi)的運(yùn)算,注意賦值表達(dá)式是從右向左進(jìn)行的。因此,

只要考生細(xì)心運(yùn)算就可以得到正確答案為Co

20、設(shè)有定義:Classperson)intnum;charname[10]:

public:voidinil(inln,uhar*ni);...};personsld[3O]則以下敘述不

正確的是

A、std是一個(gè)含有30個(gè)元素的對(duì)象數(shù)組

B、std數(shù)組中的每個(gè)元素都是person類的對(duì)象

C、std數(shù)組中的每個(gè)元素都有自己的私有變量num和name

D、std數(shù)組中的每個(gè)元索都有各自的成員函數(shù)init

標(biāo)準(zhǔn)答案:D

知識(shí)點(diǎn)解析:首先,std是對(duì)象數(shù)蛆,里面有30個(gè)對(duì)象,每個(gè)對(duì)象都有自己的私有

數(shù)據(jù)成員,由于成員函數(shù)是公有的,在內(nèi)存中存在一份即可,各個(gè)對(duì)象都可以使

用。

21、以下敘述中不正確的是

A、一個(gè)類的所有對(duì)象都有各自的數(shù)據(jù)成員,它們共享函數(shù)成員

B、一個(gè)類中可以有多個(gè)同名的成員函數(shù)

C、一個(gè)類中可以有多個(gè)構(gòu)造函數(shù)、多個(gè)析構(gòu)函數(shù)

D、在一個(gè)婁中可以聲明另一個(gè)類的對(duì)象作為它的數(shù)據(jù)成員

標(biāo)準(zhǔn)答案:C

知識(shí)點(diǎn)解析:本題考查類的基本概念。構(gòu)造函數(shù)和析構(gòu)函數(shù)比較特殊,析構(gòu)函數(shù)只

有一個(gè)。

22、以下關(guān)于私有和保十成員的敘述中,不正確的是

A、私有成員不能被外界引用,保護(hù)成員可以

B、私有成員不能被派生類引用,保護(hù)成員在公有繼承下可以

C、私有成員不能被派生類引用,保護(hù)成員在保護(hù)繼承下可以

D、私有成員不能被派生類引用,保護(hù)成員在私有繼承下可以

標(biāo)準(zhǔn)答案:A

知識(shí)點(diǎn)解析:私有成員和保護(hù)成員都不能被外界引用,這與繼承方式無(wú)關(guān)。

23、友元函數(shù)的作用是

A、提高程序的效率

B、加強(qiáng)類的封裝性

C、實(shí)現(xiàn)數(shù)據(jù)的隱蔽性

D、增加成員函數(shù)的種類

標(biāo)準(zhǔn)答案:A

知識(shí)點(diǎn)解析:友元函數(shù)的引入是為了提高程序的效率,減少通過(guò)接口訪問(wèn)的限制,

但卻破壞了類的封裝性。

24、使用靜態(tài)數(shù)據(jù)成員的好處不包括

A、可以節(jié)省內(nèi)存空間

B、是為了解決數(shù)據(jù)共享問(wèn)題

C、可以直接用類名來(lái)引用

D、可以提高運(yùn)算速度

標(biāo)準(zhǔn)答案:D

知識(shí)點(diǎn)解析?:靜態(tài)成員在一個(gè)類中只保存一份,供類的不同對(duì)象共享,因此它可以

節(jié)省內(nèi)存空間。由于靜態(tài)成員不屬于某個(gè)對(duì)象,因此引用時(shí)必須用類名來(lái)標(biāo)識(shí)。

25、以下不能正確創(chuàng)建輸出文件對(duì)象并使其與磁盤(pán)文件相關(guān)聯(lián)的語(yǔ)句是

A、ofstreammyfile:myfile,open(*'d:ofile.txt');

B、ofstream*myfile=newofstream:myfile->open("d;ofile.txt");

C、ofstreammyfile("d:ofile.txt");

D、ofstream*myfile=new("d:ofile.txt");

標(biāo)準(zhǔn)答案:D

知識(shí)點(diǎn)解析:本題考查文件對(duì)象的創(chuàng)建方法??梢灾苯佣x文件對(duì)象,也可以用

new來(lái)動(dòng)態(tài)生成。很明顯,選項(xiàng)D中使用new的方式是錯(cuò)誤的。

26、有關(guān)析構(gòu)函數(shù)的說(shuō)法中錯(cuò)誤的是

A、析構(gòu)函數(shù)有且只有一個(gè)

B、析構(gòu)函數(shù)無(wú)任何函數(shù)類型

C、析構(gòu)函數(shù)和構(gòu)造函數(shù)一樣可以有形參

D、析構(gòu)函數(shù)的作用是在對(duì)象被撤銷時(shí)做清理工作

標(biāo)準(zhǔn)答案:C

知識(shí)點(diǎn)解析:本題考查析構(gòu)函數(shù)的有關(guān)特性??忌粌H要熟記析構(gòu)函數(shù)和構(gòu)造函數(shù)

的特點(diǎn),還要深刻理解它們的內(nèi)插,只有這樣才可以靈活運(yùn)用。

27、下列運(yùn)算符中,不能重載的是

A、?:

B、+

C、-

D、<=

標(biāo)準(zhǔn)答案:A

知識(shí)點(diǎn)解析:在C++中,?:是唯一一個(gè)三目運(yùn)算符,不能被重載。

28、已知類A中有公用數(shù)據(jù)成員B*b;其中B為類名。則下列語(yǔ)句錯(cuò)誤的是

A、A():d(newB)((B)A(constA&oo):d(new

B、{*d=*oo.d;}

C、?A(D)口

D、?A(){deleted;)

標(biāo)準(zhǔn)答案:C

知識(shí)點(diǎn)解析:首先考生要能判斷出四個(gè)選項(xiàng)是構(gòu)造函數(shù)和析構(gòu)函數(shù),其中d是類A

的一個(gè)需要初始化的數(shù)據(jù)成員,且是一個(gè)指針。在初始化時(shí),必須指明類B的某

對(duì)象的地址,所以,newB可以完成這個(gè)功能.而折構(gòu)函數(shù)不能帶參數(shù),這是常

識(shí)性的知識(shí),因此正確答案為C。

29、以下有關(guān)析構(gòu)函數(shù)的敘述中錯(cuò)誤的是

A、一個(gè)類只能定義一個(gè)析構(gòu)函數(shù)

B、析構(gòu)函數(shù)和構(gòu)造函數(shù)一樣可以有形參

C、析構(gòu)函數(shù)不允許有顯式的返回值

D、析構(gòu)函數(shù)名前必須冠有符號(hào)“?”

標(biāo)準(zhǔn)答案:B

知識(shí)點(diǎn)解析:析構(gòu)函數(shù)不能有形參。

30、在C++語(yǔ)言程序中

A、函數(shù)的定義可以嵌套,但函數(shù)的調(diào)用不可以嵌套

B、函數(shù)的定義和調(diào)用均可以嵌套

C、函數(shù)的定義和調(diào)用均不可以嵌套

D、函數(shù)的定義不可以嵌套,但函數(shù)的調(diào)用可以嵌套

標(biāo)準(zhǔn)答案:D

知識(shí)點(diǎn)解析:本題考查函數(shù)的定義,調(diào)用及其嵌套之間的關(guān)系。

31、以下敘述中不正確的是

A、在類的定義中通常是用數(shù)據(jù)成員描述對(duì)象的屬性,用成員函數(shù)描述對(duì)象的行為

B、類的一個(gè)成員只能具有一種訪問(wèn)控制屬性

C、構(gòu)造函數(shù)和析構(gòu)函數(shù)是特殊的成員函數(shù),因此不允許重載

D、通過(guò)對(duì)象只能訪問(wèn)類的公有成員

標(biāo)準(zhǔn)答案:C

知識(shí)點(diǎn)解析:構(gòu)造函數(shù)是可以重載的,從而保證了類的多態(tài)性。

32、磁盤(pán)文件操作中,打開(kāi)磁盤(pán)文件的訪問(wèn)方式中以追加方式打開(kāi)文件的

A、in

BNout

C、app

D、ate

標(biāo)準(zhǔn)答案:C

知識(shí)點(diǎn)解析:根據(jù)選項(xiàng)的含義,可知app表示追加的含義??梢赃x定正確答案為

Co

33、假定AB為一個(gè)類,則執(zhí)行ABx;語(yǔ)句時(shí)將自動(dòng)調(diào)用該類的

A、有參構(gòu)造函數(shù)

B、無(wú)參構(gòu)造函數(shù)

C、拷貝構(gòu)造函數(shù)

D、賦值重載函數(shù)

標(biāo)準(zhǔn)答案:B

知識(shí)點(diǎn)解析:當(dāng)沒(méi)有顯式調(diào)用指定形式的構(gòu)造函數(shù),則系統(tǒng)自動(dòng)調(diào)用無(wú)參構(gòu)造函

數(shù),如果沒(méi)有為類指定此構(gòu)造函數(shù),則系統(tǒng)自動(dòng)為其生成一個(gè)最簡(jiǎn)單的無(wú)參構(gòu)造函

數(shù)。

34、通常初始化拷貝構(gòu)造函數(shù)的參數(shù)是

A、某個(gè)對(duì)象名

B、某個(gè)對(duì)象的成員名

C、某個(gè)對(duì)象的引用名

D、某個(gè)對(duì)象的指針名

標(biāo)準(zhǔn)答案:c

知識(shí)點(diǎn)》析:拷貝構(gòu)造函數(shù)顧名思義,就是對(duì)兩個(gè)對(duì)象進(jìn)行拷貝生成。因此,其參

數(shù)是指向某個(gè)對(duì)象的指針。

35、實(shí)現(xiàn)運(yùn)行時(shí)的多態(tài)性用

A、重載函數(shù)

B、構(gòu)造函數(shù)

C、析構(gòu)函數(shù)

D、虛函數(shù)

標(biāo)準(zhǔn)答案:D

知識(shí)點(diǎn)解析:多態(tài)性是通過(guò)虛函數(shù)來(lái)完成的,不同類層次上的類通過(guò)虛函數(shù),可以

做到運(yùn)行時(shí)根據(jù)指針的右向確定調(diào)用哪個(gè)對(duì)象的成員函數(shù)。

三、公共基礎(chǔ)填空題(本題共5題,每題1.0分,共5

分。)

36、算法的基本特征是可行性、確定性、【】和擁有足夠的情報(bào)。

標(biāo)準(zhǔn)答案:有窮性

知識(shí)點(diǎn)解析:算法的基本特征是可行性、確定性、有窮性和擁有足夠的情報(bào)。

37、在長(zhǎng)度為n的有序線性表中進(jìn)行二分查找。最壞的情況下,需要的比較次數(shù)為

[1。

標(biāo)準(zhǔn)答案:log2n

知識(shí)點(diǎn)解析:在長(zhǎng)度為n的有序線性表中進(jìn)行二分查找。最壞的情況下,需要的比

較次數(shù)為log2Ho

38、在面向?qū)ο蠓椒ㄖ?,類之間共享屬性和操作的機(jī)制稱為【】。

標(biāo)準(zhǔn)答案:繼承

知識(shí)點(diǎn)解析:在面向?qū)ο蠓椒ㄖ?,類之間共享屬性和操作的機(jī)制稱為繼承。

39、通常,將軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過(guò)程稱為

[]o

標(biāo)準(zhǔn)答案:軟件生命周期

知識(shí)點(diǎn)解析:通常,將軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過(guò)程稱

為軟件生命周期。

40、數(shù)據(jù)庫(kù)設(shè)“分為以下6個(gè)沒(méi)”階段:需求分析階段、【】、邏輯設(shè)計(jì)階段、

物理設(shè)計(jì)階段、實(shí)施階段、運(yùn)行和維護(hù)階段。

標(biāo)準(zhǔn)答案:數(shù)據(jù)庫(kù)概念沒(méi)計(jì)階段

知識(shí)點(diǎn)解析:數(shù)據(jù)庫(kù)設(shè)計(jì)分為以下六個(gè)設(shè)計(jì)階段:需求分析階段、數(shù)據(jù)庫(kù)概念設(shè)計(jì)

階段、邏輯設(shè)計(jì)階段、物理設(shè)計(jì)階段、實(shí)施階段、運(yùn)行和維護(hù)階段。

四、填空題(本題共10題,每題1.0分,共10分。)

41、在C++類中,默認(rèn)的數(shù)據(jù)成員的訪問(wèn)權(quán)限是【】。

標(biāo)準(zhǔn)答案:私有訪問(wèn)權(quán)限

知識(shí)點(diǎn)解析:在C++類中,默認(rèn)的數(shù)據(jù)成員的訪問(wèn)權(quán)限是私有訪問(wèn)權(quán)限。

42、C++中的多態(tài)分為運(yùn)行時(shí)的多態(tài)性及【】時(shí)的多態(tài)性。

標(biāo)準(zhǔn)答案:編譯

知識(shí)點(diǎn)解析:C++中的多態(tài)分為編譯時(shí)的多態(tài)性及運(yùn)行時(shí)的多態(tài)性。

43、構(gòu)造函數(shù)的主要作用是【】。

標(biāo)準(zhǔn)答案:初始化對(duì)象成員

知識(shí)點(diǎn)解析:構(gòu)造函數(shù)的主要作用是初始化對(duì)象成員。

44、標(biāo)識(shí)虛函數(shù)的關(guān)鍵字是【】。

標(biāo)準(zhǔn)答案:virtual

知識(shí)點(diǎn)解析:virtual關(guān)鍵字。

45、類的靜態(tài)成員的定義說(shuō)明語(yǔ)句不能出現(xiàn)在類的外部,而且只能定義【】次.

標(biāo)準(zhǔn)答案:1

知識(shí)點(diǎn)解析:靜態(tài)成員只能初始化1次。

46、已知p是一個(gè)指向類A公有數(shù)據(jù)成員的指針,a是類A的一個(gè)對(duì)象,如果要給

p所指向的成員賦值為5,語(yǔ)句應(yīng)寫(xiě)為【】。

標(biāo)準(zhǔn)答案:a.*p=5;

知識(shí)點(diǎn)解析:由于是公有成員,類對(duì)象可以直接訪問(wèn)類的公有成員*號(hào)表示指針?biāo)?/p>

指向的內(nèi)容。

47、在C++中,動(dòng)態(tài)創(chuàng)建對(duì)象可以使用【】操作符來(lái)完成。

標(biāo)準(zhǔn)答案:new

知識(shí)點(diǎn)解析:與C語(yǔ)言不同,C++提倡使用new操作符來(lái)動(dòng)態(tài)創(chuàng)建對(duì)象。

48、在C++中,若要使派生類中的某些成員不可見(jiàn),主要是指基類中的【】成

員。

標(biāo)準(zhǔn)答案:私有

知識(shí)點(diǎn)解析:通過(guò)在類中設(shè)置私有權(quán)限,實(shí)現(xiàn)數(shù)據(jù)成員的封裝。

49>程序的輸出結(jié)果是【】。#inckide<iostream>usingnamespacestd:class

A{intx;public:A(intx=l):x(x){cout<<x;)};voidmain(){Aa,b(2),

c(3);}

標(biāo)準(zhǔn)答案:123

知識(shí)點(diǎn)解析:a對(duì)象使用和默認(rèn)的構(gòu)造函數(shù),b對(duì)象使用2來(lái)初始化對(duì)象c對(duì)象使

用3來(lái)初始化對(duì)象,輸出相應(yīng)的值后,結(jié)果變?yōu)?23。

50、程序的輸出結(jié)果是【】。#include<iostream>usingnamespacestd;class

A{public:A()(a=b=2;)A(inti,intj){a=i;b=j;}voiddisplay()(cout<<a<<

b:)private:inta,b;};voidmain(){Am,n(4,8);m.displayO;

n.displayO;}

標(biāo)準(zhǔn)答案:2248

知識(shí)點(diǎn)解析:m對(duì)象使用和默認(rèn)的構(gòu)造函數(shù),其a與b變量的值均為2;而n變量

使用4和8米初始化程序的變量,a,b的值為4和8,依次輸出的結(jié)果為2248。

盟家二級(jí)(C++)筆試模擬試卷第2套

一、公共基礎(chǔ)選擇題(本題共io題,每題1.0分,共

10分。)

1、數(shù)據(jù)結(jié)構(gòu)作為計(jì)算機(jī)的一門(mén)學(xué)科,主要研究數(shù)據(jù)的邏輯結(jié)構(gòu)、對(duì)各種數(shù)據(jù)結(jié)構(gòu)

進(jìn)行的運(yùn)算,以及

A、數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)

B、計(jì)算方法

C、數(shù)據(jù)映象

D、邏輯存儲(chǔ)

標(biāo)準(zhǔn)答案:1

知識(shí)點(diǎn)解析:數(shù)據(jù)結(jié)構(gòu)是研究數(shù)據(jù)元素及其之間的相互關(guān)系和數(shù)據(jù)運(yùn)算的一門(mén)學(xué)

科,它包含3個(gè)方面的內(nèi)容,即數(shù)據(jù)的邏輯結(jié)構(gòu)、存儲(chǔ)結(jié)構(gòu)和數(shù)據(jù)的運(yùn)算。

2、串的長(zhǎng)度是

A、申中不同字符的個(gè)數(shù)

B、串中不同字母的個(gè)數(shù)

C、串中所含字符的個(gè)數(shù)且字符個(gè)數(shù)大于零

D、串中所含字符的個(gè)數(shù)

標(biāo)準(zhǔn)答案:8

知識(shí)點(diǎn)解析:串的長(zhǎng)度指的是串中的字符的個(gè)數(shù),且其字符個(gè)數(shù)可以為零。

3、在計(jì)算機(jī)中,算法是指

A、加工方法

B、解題方案的準(zhǔn)確而完整的描述

C、排序方法

D、查詢方法

標(biāo)準(zhǔn)答案:2

知識(shí)點(diǎn)解析:計(jì)算機(jī)算法是指解題方案的準(zhǔn)確而完整的描述,它有以下幾個(gè)基本特

征:可行性、確定性、有窮性和擁有足夠的情報(bào)。

4、以下不屬于對(duì)象的基本特點(diǎn)的是

A、分類性

B、多態(tài)性

C、繼承性

D、封裝性

標(biāo)準(zhǔn)答案:4

知識(shí)點(diǎn)解析:對(duì)象有如下一些基本特點(diǎn),即標(biāo)識(shí)惟一性、分類性、多態(tài)性、封裝性

和模塊獨(dú)立性。

5、開(kāi)發(fā)軟件所需高成本和產(chǎn)品的低質(zhì)量之間有著尖銳的矛盾,這種現(xiàn)象稱做

A、軟件投機(jī)

B、軟件危機(jī)

C、軟件工程

D、軟件產(chǎn)生

標(biāo)準(zhǔn)答案:2

知識(shí)點(diǎn)解析:軟件工程概念的出現(xiàn)源自軟件危機(jī)。所謂軟件危機(jī)是泛指在計(jì)算機(jī)軟

件的開(kāi)發(fā)和維護(hù)過(guò)程中所遇到的一系列嚴(yán)重問(wèn)題??傊?,可以將軟件危機(jī)歸結(jié)為成

木、質(zhì)量、生產(chǎn)率等問(wèn)題。

6、下面不屬于軟件設(shè)計(jì)原則的是

A、抽象

B、模塊化

C、自底向上

D、信息隱蔽

標(biāo)準(zhǔn)答案:4

知識(shí)點(diǎn)解析:軟件設(shè)計(jì)遵循軟件工程的基本目標(biāo)和原則,建立了適用于在軟件設(shè)計(jì)

中應(yīng)該遵循的基本原理和與軟件設(shè)計(jì)有關(guān)的概念,它們是抽象、模塊化、信息隱蔽

和數(shù)據(jù)獨(dú)立忤.自底向卜是集成測(cè)試中增量測(cè)試的一種「

7、開(kāi)發(fā)大型軟件時(shí),產(chǎn)生困難的根本原因是

A、大系統(tǒng)的復(fù)雜性

入員知識(shí)不足

C、客觀世界千變?nèi)f化

D、時(shí)間緊、任務(wù)重

標(biāo)準(zhǔn)答案:1

知識(shí)點(diǎn)解析:軟件的顯著特點(diǎn)是規(guī)模龐大,復(fù)雜度超線性增長(zhǎng),在開(kāi)發(fā)大型軟件

時(shí),要保證高質(zhì)量,極端復(fù)雜困難,不僅涉及技術(shù)問(wèn)題,更重要的是必須要有嚴(yán)格

而科學(xué)的管理。

8、下列SQL語(yǔ)句中,用于修改表結(jié)構(gòu)的是

A、ALTER

B、CREATE

C、UPDATE

D、INSERT

標(biāo)準(zhǔn)答案:1

知識(shí)點(diǎn)解析:SQL語(yǔ)句中凡創(chuàng)建都用CREATE,刪除都用DROP,改變用

ALTER,再跟類型和名字,附加子句。

9、數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)系統(tǒng)和數(shù)據(jù)庫(kù)管理系統(tǒng)之間的關(guān)系是

A、數(shù)據(jù)庫(kù)包括數(shù)據(jù)庫(kù)系統(tǒng)和數(shù)據(jù)庫(kù)管理系統(tǒng)

B、數(shù)據(jù)庫(kù)系統(tǒng)包拈數(shù)據(jù)庫(kù)和數(shù)據(jù)庫(kù)管理系統(tǒng)

C、數(shù)據(jù)庫(kù)管理系統(tǒng)包括數(shù)據(jù)庫(kù)和數(shù)據(jù)庫(kù)系統(tǒng)

D、3者沒(méi)有明顯的包含關(guān)系

標(biāo)準(zhǔn)答案:2

知識(shí)點(diǎn)解析:數(shù)據(jù)庫(kù)系統(tǒng)①atabaseSystem,簡(jiǎn)稱DBS)包括數(shù)據(jù)庫(kù)(Database,笥稱

DB、數(shù)據(jù)庫(kù)管理系統(tǒng)(DalabaseManagementSystem,簡(jiǎn)稱DBMS)、數(shù)據(jù)庫(kù)管理

員、硬件和軟件。

10、關(guān)系模型允許定義3類數(shù)據(jù)約束,下列不屬于數(shù)據(jù)約束的是

A、實(shí)體完整性約束

B、參照完整性約束

C、域完整性約束

D、用戶自定義的完整性約束

標(biāo)準(zhǔn)答案:4

知識(shí)點(diǎn)解析:關(guān)系模型允許定義3類數(shù)據(jù)約束,它們是實(shí)體完整性約束、參照完整

性約束及用戶自定義的完整性約束。其中前兩種完整性約束由關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)支

持,對(duì)于用戶自定義的完整性約束,則由關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)提供完整性約束語(yǔ)言,用

戶利用該語(yǔ)言給出約束條件,運(yùn)行時(shí)由系統(tǒng)自動(dòng)檢查。

二、選擇題(本題共25題,每題1.0分,共25分。)

11、下列關(guān)于C++語(yǔ)言類的描述中錯(cuò)誤的是

A、類用于描述事物的屬性和時(shí)事物的操作

B、類與類之間通過(guò)封裝而具有明確的獨(dú)立性

C、類與類之間必須是平等的關(guān)系,而不能組成層次結(jié)構(gòu)

D、類與類之間可以通過(guò)一些方法進(jìn)行通信和聯(lián)絡(luò)

標(biāo)準(zhǔn)答案:4

知識(shí)點(diǎn)解析:C++語(yǔ)言中的類是可以組成層次結(jié)構(gòu)的,類是用于描述事物的屬性和

對(duì)事物的操作,類與類之間有相對(duì)的獨(dú)立性,但其可以通過(guò)?些方法進(jìn)行信息的通

信。

12、C++語(yǔ)言中,表示一條語(yǔ)句結(jié)束的標(biāo)號(hào)是

A、#

B、;

C、//

D、)

標(biāo)準(zhǔn)答案:2

知識(shí)點(diǎn)3析:C++語(yǔ)言中語(yǔ)句的結(jié)束符是分號(hào)。

13、以下敘述中正確的是

A、構(gòu)成C++語(yǔ)言程序的基本單位是類

B、可以在一個(gè)函數(shù)中定義另一個(gè)函數(shù)

C、main()函數(shù)必須放在其他函數(shù)之前

D、所有被調(diào)用的函數(shù)一定要在調(diào)用之前進(jìn)行定義

標(biāo)準(zhǔn)答案:1

知識(shí)點(diǎn)解析:關(guān)于C++涪言,我們應(yīng)該了解以下必須要掌握的基礎(chǔ)知識(shí):①C++

程序是由類構(gòu)成的。②一個(gè)函數(shù)由兩部分組成:函數(shù)的首部和函數(shù)體。③一人類

由兩部分組成:類成員變量和類成員函數(shù)。④一個(gè)C++程序總是從main函數(shù)開(kāi)始

執(zhí)行的,而不論main函數(shù)在整個(gè)程序中的位置如何(main函數(shù)可以放在程序最前

頭,也可以放在程序最后,或?qū)懺谝恍┖瘮?shù)之前,在另一些函數(shù)之后)。⑤C++程

序在書(shū)寫(xiě)上,表現(xiàn)形式比較自由,一行內(nèi)可以寫(xiě)幾個(gè)語(yǔ)句,一個(gè)語(yǔ)句可以分寫(xiě)在幾

行,。每個(gè)語(yǔ)句和數(shù)據(jù)定義的最后必須有一個(gè)分號(hào)。⑥可以用/*……以和〃對(duì)C十十

語(yǔ)言的程序的任何部分作注釋。

14^已知有定義constintD=5;inti=l:doublef=0.32;charc=15;則下列選項(xiàng)

錯(cuò)誤的是

A、++i;

B、D—;

C、c++;

D、-f;

標(biāo)準(zhǔn)答案:2

知識(shí)點(diǎn)解析:運(yùn)算符不能用于常量。

15、以下程序的輸出結(jié)果是#includeViostream.h>voidreverse(inta口,intn){int

i,t;for(i=0;i<n/2;i++)(t=a[i];a[i]=a[n-l-i];a[n-l-i]=t;)}voidmain(){int

b|IO]={l,2,3,4,5,6,7,8,9,10}

A、22

B、10

C、34

D、30

標(biāo)準(zhǔn)答案:1

知識(shí)點(diǎn)解析:在main函數(shù)中,調(diào)用reverse函數(shù)將?b數(shù)組中的前8個(gè)成員進(jìn)行互

置,執(zhí)行完畢后,b數(shù)組中的成員為{8,7,6,5,4,3,2,1,9,10),在執(zhí)行

for循環(huán)結(jié)構(gòu)后,將b[6],b[7]……b[9]的值相加,結(jié)果為1+2+9+10=22。注意:在

計(jì)算累加和時(shí),應(yīng)將累加變量賦值為零。

16、下面程序的功能是e316表示為兩個(gè)加數(shù)的和,使兩個(gè)加數(shù)分別能被13和II

整除,在劃線處應(yīng)填入的選項(xiàng)是#inckide<iostream.h>voidmain(){inti=0,j,

k:do{i++;k=316-13*i;}while<);j=k/U;cout<<n316=13*H<<i<<

"+ll*"<<j;)

A、k/11

B、k%ll

C、k/ll==0

D、k%ll==0

標(biāo)準(zhǔn)答案:2

知識(shí)點(diǎn)解析:do-while語(yǔ)句的一般形式是do{語(yǔ)句}while(表達(dá)式);特點(diǎn)是:"直

到型”循環(huán)結(jié)構(gòu)。先執(zhí)行一次“語(yǔ)句”,判“表達(dá)式”,當(dāng)“表達(dá)式''為非0,再執(zhí)行“語(yǔ)

句”,直到“表達(dá)式”的值為0時(shí)停止執(zhí)行語(yǔ)句。在一?般情況下,用while和do-while

語(yǔ)句解決同一問(wèn)題時(shí),若二者的循環(huán)體部分是一樣的,它們的結(jié)果也一樣。但當(dāng)

while后面的“表達(dá)式”一開(kāi)始就為“假”時(shí),兩種循環(huán)的結(jié)果不同。這是因?yàn)榇藭r(shí)

while循環(huán)的循環(huán)不被執(zhí)行,而do-whilc循環(huán)的循環(huán)體被執(zhí)行一次。本題的關(guān)鍵是

兩個(gè)加數(shù)分別能被13和11整除,在i=0時(shí),直接將316賦值給k,當(dāng)k%ll的值

為0時(shí),則不必執(zhí)行循環(huán),將執(zhí)行j=k/U語(yǔ)句,輸出結(jié)果,所以該表達(dá)式合理的

條件是k%ll。

17、設(shè)有數(shù)組定義:chararray]]二"China”;,則數(shù)組array所占的空間為

A、4個(gè)字節(jié)

B、5個(gè)字節(jié)

C、6個(gè)字節(jié)

D、7個(gè)字節(jié)

標(biāo)準(zhǔn)答案:4

知識(shí)點(diǎn)解析:在給數(shù)組賦值時(shí),可以用一個(gè)字符串作為初值,這種方法直觀,方便

而且符合人們的習(xí)慣。數(shù)組array的長(zhǎng)度不是5,而是6,這點(diǎn)必須要注意。因?yàn)?/p>

字符串常量的最后由系統(tǒng)加上一個(gè)'\0',因此,上面的初始化與下面的等價(jià);char

array口={'C','h',示,'a',

18、若已定義:inta[]={0,1,2,3,4,5,6,7,8,9},*p=a,i;其中0WK9,

則對(duì)a數(shù)組元素不正確的引用是

A、a[p-a]

B、*(&a[i])

C、p|i]

D、a[10]

標(biāo)準(zhǔn)答案:8

知識(shí)點(diǎn)解析:通常,引用一個(gè)數(shù)組元素可以用下標(biāo)法,如a[p-a]形式,或指針?lè)ǎ?/p>

如*(&如口)的形式。本題中a[9]=9,a[10]顯然超出了數(shù)組范圍,注意,數(shù)組的下標(biāo)

是從。開(kāi)始的。

19、以卜程序的輸出結(jié)果是#include<iostream.h>voidmain(){intx=l,y=3;

coutVVx++VV",";{intx=0;x+=y*2;cout<<XV<<y<<

}cout<<x<<";'<<y;}

A、1,6,3,1,3

B、1,6,3,6,3

C、1,6,3,2,3

D、1,7,3,2,3

標(biāo)準(zhǔn)答案:4

知識(shí)點(diǎn)解析:coutVVx++;語(yǔ)句中,程序先輸出x的值,然后再加1,所以結(jié)果

為1,此時(shí)x的值為2;在inlx=0;x+=y*2;語(yǔ)句中,將0的值賦給x,然后再運(yùn)

算x+=y*2的值,結(jié)果為x=6(此時(shí)x的值為局部變量),y的值不變,在最后在執(zhí)行

了x語(yǔ)句后的值,所以應(yīng)為2。

20、函數(shù)fun的返回值是fun(char*a,char*b){intnum=0,n=0;

while(*(a+num)!='\O')num++;while(b[n]){*(a+nuni)=b[n]:num++;n++;}return

num;)

A、字符串a(chǎn)的長(zhǎng)度

B、字符串b的長(zhǎng)度

C、字符串a(chǎn)和b的長(zhǎng)度之差

D、字符串a(chǎn)和b的長(zhǎng)度之和

標(biāo)準(zhǔn)答案:8

知識(shí)點(diǎn)解析:本題首先通過(guò)第一個(gè)while循環(huán)計(jì)算字符串a(chǎn)的長(zhǎng)度,再通過(guò)第二個(gè)

循環(huán),將字符串a(chǎn)和b相連,最后返回連接后的總長(zhǎng)度。

21、下面程序輸出的結(jié)果是#include<iostream.h>voidmain(){inti;int

a[3][3]={l,2,3,4,5,6,7,8,9):for(i=0;<3;i++)cout<<a[2-i][i]<<H

”;}

A、159

B、753

C、357

D、591

標(biāo)準(zhǔn)答案:2

知識(shí)點(diǎn)解析:首先,當(dāng)i=0時(shí),數(shù)組中的位置是a[2)[0]=7,當(dāng)然,如果用排除法的

話,就不用考慮后面的循環(huán)了,因?yàn)樵?個(gè)選項(xiàng)中,第1個(gè)數(shù)為7的選項(xiàng)只有B。

本題執(zhí)行第2次循環(huán)時(shí),i的值為1,則cout函數(shù)中的數(shù)組指向?yàn)橐来?/p>

循環(huán),可求出答案。

22>下面程序的結(jié)果為#includeViostream.h>intc:classA(private:inta:

staticintb;public:A(){a=0;c=0;}voidseta()|a++;)voidsetb(){b++;}

A>121

B>122

C、112

D、222

標(biāo)準(zhǔn)答案:2

知識(shí)之解析:C++語(yǔ)言中全局變量是任何函數(shù)都可以改變的量,靜態(tài)變量的有效范

圍在定義它的類中,而普通的變量的有效性只在使用它的函數(shù)中,在本題中c為全

局變量,b為靜態(tài)變量,a為普通變量,b和c在類A的對(duì)象al和a2中都自加1。

所以b,c為2,a為lo

23、下列描述中哪個(gè)是正確的?

A、私有派生的子類無(wú)法訪問(wèn)父類的成員

13、類A的私有派生子類的派生類C無(wú)法初始化其祖.先類A對(duì)象的屬性,因?yàn)轭?/p>

A的成員對(duì)類C是不可方問(wèn)的

C、私有派生類不能作為基類派生子類

D、私有派生類的所有子孫類將無(wú)法繼續(xù)繼承該類的成員

標(biāo)準(zhǔn)答案:2

知識(shí)點(diǎn)露析:C++語(yǔ)言中一個(gè)派生類能不能繼承基類的所有數(shù)據(jù)成員受繼承方式的

限制。

24、下列關(guān)于構(gòu)造函數(shù)說(shuō)法不正確的是

A、構(gòu)造函數(shù)必須與類同名

B、構(gòu)造函數(shù)可以省略不寫(xiě)

C、構(gòu)造函數(shù)必須有返回值

D、在構(gòu)造函數(shù)中可以對(duì)類中的成員進(jìn)行初始化

標(biāo)準(zhǔn)答案:4

知識(shí)點(diǎn)解析:構(gòu)造函數(shù)是一類特殊的函數(shù),其特點(diǎn)是函數(shù)名與類同名,沒(méi)有返回

值,也可以省略不寫(xiě),還可以對(duì)類中的成員進(jìn)行初始化。

25、如果友元函數(shù)重載?個(gè)運(yùn)算符時(shí),其參數(shù)表中沒(méi)有任何參數(shù)則說(shuō)明該運(yùn)算符是

A、一元運(yùn)算符

B、二元運(yùn)算符

C、選項(xiàng)A)和選項(xiàng)B)都可能

D、重載錯(cuò)誤

標(biāo)準(zhǔn)答案:8

知識(shí)點(diǎn)解析:C++中用友元函數(shù)重載運(yùn)算符至少有一個(gè)參數(shù),重載一目運(yùn)算符要有

一個(gè)參數(shù),重載二目運(yùn)算符要有兩個(gè)參數(shù)。

26、在重載一個(gè)運(yùn)算符時(shí),如果其參數(shù)表中有一個(gè)參數(shù),則說(shuō)明該運(yùn)算符是

A、一元成員運(yùn)算符

B、二元成員運(yùn)算符

C、一元友元運(yùn)算符

D、選項(xiàng)B)和選項(xiàng)C)都可能

標(biāo)準(zhǔn)答案:8

知識(shí)點(diǎn)解析:C++語(yǔ)言中用成員函數(shù)重載時(shí),重載一目運(yùn)算符沒(méi)有參數(shù),重我二目

運(yùn)算符要有一個(gè)參數(shù)。

27、下列關(guān)于模板的說(shuō)法正確的是

A、模板的實(shí)參在任何時(shí)候都可以省略

B、類模板與模板類所指的是同一概念

C、類模板的參數(shù)必須是虛擬類型的

D、類模板中的成員函數(shù)全部都是模板函數(shù)

標(biāo)準(zhǔn)答案:8

知識(shí)點(diǎn)解析:在C++中規(guī)定如果一個(gè)類被聲明為類模板,那么其中的所有成員函

數(shù)就都成為了模板函數(shù)。

28、表示在輸出時(shí)顯示小數(shù)位,和在文件輸入時(shí)判斷文件尾的函數(shù)分別是

A、showbase()和cof()

B、showpoint()和eof()

C、showpoint()和bad()

D^showpoint()和good()

標(biāo)準(zhǔn)答案:2

知識(shí)點(diǎn)解析:表示在輸出時(shí)顯示小數(shù)位,和在文件輸入時(shí)判斷文件尾的函數(shù)分別是

showpoint。和cof()o

29、下面程序段的運(yùn)行結(jié)果是voidmain(){inti,a,b,c;a=l;b=2;C=2;

while(a<b<c){t=a;a=b:b=t:c—;}cout<<a<<","<<b<<",n<<

c;1

A、1,2,0

B、2,1,0

C、1,2,1

D、2,1,1

標(biāo)準(zhǔn)答案:1

知識(shí)點(diǎn)解析:本題中(a<bVC的運(yùn)算次序是先算aVb,返回1,再運(yùn)算IVc,返

回1,所以表達(dá)式aVbVc的值為1。

30、下列程序中畫(huà)線處應(yīng)填入的語(yǔ)句是classBase{public:voidfun()(cout<<

"Baseoffun"<<endl;});classDerived:publicBase{voidfun()(〃顯示

基類的成員函數(shù)funcout<

A^fun();

B、Base.fun();

C、Base::fun();

D^Base—>fun();

標(biāo)準(zhǔn)答案:4

知識(shí)點(diǎn)解析:如果在子類中要訪問(wèn)父類的函數(shù)應(yīng)用k”運(yùn)算符。

31、若定義intk=7,x=i2;,則能使值為3的表達(dá)式是

A、x%=(k%=5)

B、x%=(k-k%5)

C、x%=k—k%5

D、(x%=k)-(k%=5)

標(biāo)準(zhǔn)答案:8

知識(shí)點(diǎn)解析:運(yùn)算符“%”的兩側(cè)都應(yīng)該是整型數(shù)。另外,本題需要掌握的知識(shí)點(diǎn)是

x%=k等價(jià)于x=x%k。

32、在位運(yùn)算中,操作數(shù)每右移一位,其結(jié)果相當(dāng)于

A、操作數(shù)乘以2

B、操作數(shù)除以2

C、操作數(shù)乘以4

D、操作數(shù)除以4

標(biāo)準(zhǔn)答案:2

知識(shí)點(diǎn)解析:右移運(yùn)算符“>>”是雙目運(yùn)算符。其功能是把左邊的運(yùn)算數(shù)的

各二進(jìn)位全部右移若干位,“>>”右邊的數(shù)指定移動(dòng)的位數(shù)。例如:設(shè)a=15,a>

>2表示把000001111右移為00000011(十進(jìn)制3)o

33、有以下結(jié)構(gòu)體說(shuō)明和變量的定義,且指針p指向變量a,指針q指向變量b。

則不能把結(jié)點(diǎn)b連接到結(jié)點(diǎn)a之后的語(yǔ)句是structnode{chardata;struct

node*next:)a,b,*p=&a,*q=&b;

A、a.next=q;

B、p.next=&b;

C、p->next=&b;

D、(*p).next=q:

標(biāo)準(zhǔn)答案:2

知識(shí)點(diǎn)解析:要把結(jié)點(diǎn)h連接到結(jié)點(diǎn)a之后.必須把h的地址給a的next指針,選

項(xiàng)A中,指針變量q保存的就是變量b的地址,選項(xiàng)B中的p是指針變量,應(yīng)該

是p->nexl=&b;在選項(xiàng)D中,用*運(yùn)算符取出結(jié)構(gòu)體變量,并且保存的就是b的

地址,所以正確。

34、一個(gè)類的友元函數(shù)能夠訪問(wèn)該類的

A、私有成員

B、保護(hù)成員

C、公有成員

D、所有成員

標(biāo)準(zhǔn)答案:8

知識(shí)點(diǎn)解析:一個(gè)類的友元函數(shù)對(duì)類成員的訪問(wèn)能力等同于類的成員函數(shù),即能訪

問(wèn)類的所有成員。

35、下面程序的輸出結(jié)果是#include<iostream.h>#include<slring.h>voidmain()

{charpl[10],p2[10]strcpy(pl,"abc");strcpy(p2,"ABC");charstr[5O]=Mxyz";

strcpy(str+2*strcat(p1?p2));

A、xyzabcABC

B、zabcABC

C、xyabcABC

D、yzabcABC

標(biāo)準(zhǔn)答案:4

知識(shí)點(diǎn)解析:該函數(shù)的調(diào)用方式是strcpy(字符數(shù)組,字符串)其中“字符串”可以是

串常量,也可以是字符數(shù)組。函數(shù)的功能是將“字符串”完整地復(fù)制到“字符數(shù)組”

中,字符數(shù)組中原有內(nèi)容被覆蓋。使用該函數(shù)時(shí)注意:①字符數(shù)組必須定義得足

夠大,以便容納復(fù)制過(guò)來(lái)的字符串。復(fù)制時(shí),連同結(jié)束標(biāo)志'\0'一起復(fù)制。②不能

用賦值運(yùn)算符將一個(gè)字符串直接賦值給一個(gè)字符數(shù)組,只能用sircpyO函數(shù)來(lái)處

理。strcat(字符數(shù)組,字符串)功能是把“字符串”連接到“字符數(shù)組”中的字符串尾

端,并存儲(chǔ)于“字符數(shù)組”中?!白址麛?shù)組”中原來(lái)的結(jié)束標(biāo)志,被“字符串”的第一個(gè)

字符覆蓋,而“字符串”在操作中未被修改。使用該函數(shù)時(shí)注意:①由于沒(méi)有邊界

檢查,編程者要注意保證“字符數(shù)組”定義得足夠大,以便容納連接后的目標(biāo)字符

串;否則,會(huì)因長(zhǎng)度不夠而產(chǎn)生問(wèn)題。②連接前兩個(gè)字符串都有結(jié)束標(biāo)志'\0',連

接后“字符數(shù)組”中存儲(chǔ)的字符串的結(jié)束標(biāo)志‘\0'被舍棄,只在目標(biāo)串的最后保留一

個(gè)'0"

三、公共基礎(chǔ)填空題(本題共5題,每題1.0分,共5

分。)

36、數(shù)據(jù)的邏輯結(jié)構(gòu)有線性結(jié)構(gòu)和【】?jī)纱箢悺?/p>

標(biāo)準(zhǔn)答案:非線性結(jié)構(gòu)

知識(shí)點(diǎn)解析:數(shù)據(jù)的邏輯結(jié)構(gòu)有線性結(jié)構(gòu)和非線性結(jié)構(gòu)兩大類。

37、順序存儲(chǔ)方法是把邏輯上相鄰的結(jié)點(diǎn)存儲(chǔ)在物理位置【】的存儲(chǔ)單元中。

標(biāo)準(zhǔn)答案:相鄰

知識(shí)點(diǎn)解析:常用的存儲(chǔ)表示方法有4種,順序存儲(chǔ)、鏈?zhǔn)酱鎯?chǔ)、索引存儲(chǔ)、散列

存儲(chǔ)。其中,順序存儲(chǔ)方法是把邏輯上相鄰的結(jié)點(diǎn)存儲(chǔ)在物理位置也相鄰的存儲(chǔ)單

元中。

38、一個(gè)類可以從直接或間接的祖先中繼承所有屬性和方法。采用這個(gè)方法提高了

軟件的【】。

標(biāo)準(zhǔn)答案:可重用性

知識(shí)點(diǎn)解析:本題考查r繼承的優(yōu)點(diǎn):相似的對(duì)象可以共享程序代碼和數(shù)據(jù)結(jié)構(gòu),

從而大大減少了程序中的冗余,提高軟件的可重用性。

39、軟件工程研究的內(nèi)容主要包括【】技術(shù)和軟件工程管理。

標(biāo)準(zhǔn)答案:軟件開(kāi)發(fā)

知識(shí)點(diǎn)解析:基于軟件工程的目標(biāo),軟件工程的理論和技術(shù)性研究的內(nèi)容主要包

括:軟件開(kāi)發(fā)技術(shù)和軟件工程管理。軟件開(kāi)發(fā)技術(shù)包括:軟件開(kāi)發(fā)方法學(xué)、開(kāi)發(fā)過(guò)

程、開(kāi)發(fā)工具和軟件工程環(huán)境,其主體內(nèi)容是軟件開(kāi)發(fā)方法學(xué)。軟件工程管理包

括:軟件管理學(xué)、軟件工程經(jīng)濟(jì)學(xué),以及軟件心理學(xué)等內(nèi)容。

40、關(guān)系操作的特點(diǎn)是【】操作。

標(biāo)準(zhǔn)答案:集合

知識(shí)點(diǎn)解析:在關(guān)系操作中,所有操作對(duì)象與操作結(jié)果都是關(guān)系。而關(guān)系定義為元

數(shù)相同的元組的集合。因此,關(guān)系操作的特點(diǎn)是集合操作。

四、填空題(本題共9題,每題7.0分,共9分。)

41、開(kāi)發(fā)一個(gè)C++語(yǔ)言程序的步驟通常包括編輯、【】、鏈接、運(yùn)行和調(diào)試。

標(biāo)準(zhǔn)答案:編譯

知識(shí)點(diǎn)解析:C++語(yǔ)言是以編譯方式實(shí)現(xiàn)的高級(jí)語(yǔ)言,C++語(yǔ)言程序的實(shí)現(xiàn),必須

要使用某種C++語(yǔ)言的編譯器對(duì)程序進(jìn)行編譯。

42、假設(shè)inta=l,b=2;貝!1表達(dá)式a+++-----b的值為【】。

標(biāo)準(zhǔn)答案:2

知識(shí)點(diǎn)解析:因?yàn)檫\(yùn)算符++和-都是右結(jié)合的且優(yōu)先級(jí)高于雙目運(yùn)算符+,所以上

式的運(yùn)算順序?yàn)橄萢++,-b,再a+b,最后a自加1。

43下面程序的輸出結(jié)果為[1o#include<iostream.h>voidmain(){int

num=0?i=8;doji-----;num++;)while(------i);cout<<num<<endl;|

標(biāo)準(zhǔn)答案:4

知識(shí)點(diǎn)解析:本題考查的是考生分析簡(jiǎn)單循環(huán)結(jié)構(gòu)的能力。大體過(guò)程為第1次進(jìn)入

循環(huán),i變成7,num變?yōu)?,i變?yōu)?;第2次進(jìn)入循環(huán),i變成5,num變?yōu)?,i

變?yōu)?;第3次進(jìn)入循環(huán),i變成3,num變?yōu)?,i變?yōu)?;第4次進(jìn)入循環(huán),i變

成1,num變?yōu)?,i變?yōu)?,循環(huán)結(jié)束。

44、通過(guò)使用new和delete兩個(gè)運(yùn)算符進(jìn)行的分配為【】存儲(chǔ)分配。

標(biāo)準(zhǔn)答案:動(dòng)態(tài)

知識(shí)點(diǎn)解析:本題考查的是對(duì)動(dòng)態(tài)分配內(nèi)存的掌握,在C++語(yǔ)言中,使用關(guān)鍵字

new和delete進(jìn)行動(dòng)態(tài)內(nèi)存申請(qǐng)和釋放。

45、下面程序的運(yùn)行結(jié)果為[]o#include<iostream.h>voidfun(intx=0,int

y=0){cout<<x<<y;}voidmain(){fun(5);]

標(biāo)準(zhǔn)答案:50

知識(shí)點(diǎn)解析:本題考查的是函數(shù)的默認(rèn)參數(shù),如果一個(gè)函數(shù)中有多個(gè)參數(shù),則默認(rèn)

參數(shù)應(yīng)從右至左逐個(gè)定義,所以題1=1中x使用參數(shù)5,y使用默認(rèn)參數(shù)0。

46、C++語(yǔ)言支持的兩種多態(tài)性分別是編譯時(shí)的多態(tài)性和【】的多態(tài)性。

標(biāo)準(zhǔn)答案:運(yùn)行時(shí)

知識(shí)點(diǎn)解析:本題考查的是多態(tài)的概念,多態(tài)性主要是指發(fā)出同樣的消息而被不同

類型的對(duì)象接收時(shí)導(dǎo)致完全不同的行為,它一般分為編譯時(shí)的多態(tài)性和運(yùn)行時(shí)的多

態(tài)性,比如函數(shù)重載和虛函數(shù)。

47、重載的運(yùn)算符保持其原有的【】、優(yōu)先級(jí)和結(jié)合性不變。

標(biāo)準(zhǔn)答案:操作符個(gè)數(shù)

知識(shí)點(diǎn)解析:本題考查的是運(yùn)算符重載的概念,用戶重新定義的運(yùn)算符不改變?cè)\(yùn)

算符的優(yōu)先性和結(jié)合性,也不改變運(yùn)算符的語(yǔ)法結(jié)構(gòu),也就是說(shuō)重載運(yùn)算符不會(huì)產(chǎn)

生新的運(yùn)算符。

48、cout.put('A');,還可以表示為[]。

標(biāo)準(zhǔn)答案:coutVV'A';

知識(shí)點(diǎn)解析:本題考查的是C++語(yǔ)言的流輸出操作。coin是C++語(yǔ)言定義好的輸

出流對(duì)象,其中包括成員函數(shù)put(charc),其功能是輸出一個(gè)字符到屏幕,實(shí)際上

C++語(yǔ)言中已經(jīng)重載了操作符“VV”作為流輸出操作符。

49、在C++語(yǔ)言中,訪問(wèn)一個(gè)對(duì)象的成員所用的運(yùn)算符是[】,訪問(wèn)一個(gè)指針?biāo)?/p>

指向的對(duì)象的成員所用的運(yùn)算符是【】。

標(biāo)準(zhǔn)答案:成員選擇運(yùn)算符(或成員訪問(wèn)運(yùn)算符(或“?>”)

知識(shí)點(diǎn)解析:本題考查的是使用對(duì)象和對(duì)象指針訪問(wèn)成員所使用的符號(hào)的不同,考

生請(qǐng)注意它們的區(qū)別。

國(guó)家二級(jí)(C++)筆試模擬試卷第3套

一、公共基礎(chǔ)選擇題(本題共70題,每題7.0分,共

70分。)

1、下列關(guān)于棧的敘述中正確的是

A、在棧中只能插入數(shù)據(jù)

B、在棧中只能刪除數(shù)據(jù)

C、棧是先進(jìn)先出的線性表

D、棧是先進(jìn)后出的線性表

標(biāo)準(zhǔn)答案:D

知識(shí)點(diǎn)解析:棧是特殊的線性表,在棧頂可以插入元素,稱為入棧,也可以刪除元

素,稱為退棧。因此,棧是一種先進(jìn)后出的線性表。

2、下列數(shù)據(jù)結(jié)構(gòu)中,插入時(shí)不需要移動(dòng)其他元素的是

A、有序線性鏈表

B、無(wú)序線性鏈表

C、棧和隊(duì)列

D、以上三種都是

標(biāo)準(zhǔn)答案:D

知識(shí)點(diǎn)解析:在線性鏈表中插入或刪除元素都不需要移動(dòng)其他元素,只需改變指針

即可;棧只能在一端插入或刪除元素,也不需要移動(dòng)其他元素;隊(duì)列只能在一端插

入元素,在另一端刪除元素,也不需要移動(dòng)其他元素。

3、下列敘述中正確的是

A、同一個(gè)數(shù)據(jù)結(jié)構(gòu)不管是采用何種存儲(chǔ)方式,其所占的存儲(chǔ)容量一定是相同的

B、同一個(gè)數(shù)據(jù)結(jié)構(gòu)采用不同的存儲(chǔ)方式,其所占的存儲(chǔ)容量一般是不同的

C、同一個(gè)有序表不管是采用何種存儲(chǔ)方式,都可以使用對(duì)分查找法

D、同一個(gè)有序表不管是采用何種存儲(chǔ)方式,都不能使用對(duì)分查找法

標(biāo)準(zhǔn)答案:B

知識(shí)點(diǎn)解析:同一個(gè)數(shù)據(jù)結(jié)構(gòu)可以有多種存儲(chǔ)結(jié)構(gòu);其所占的存儲(chǔ)容量一般是不同

的。而對(duì)分查找法只適用于順序存儲(chǔ)的有序表。

4、數(shù)據(jù)結(jié)構(gòu)分為邏輯結(jié)構(gòu)和存儲(chǔ)結(jié)構(gòu),下列數(shù)據(jù)結(jié)構(gòu)中不屬于存儲(chǔ)結(jié)構(gòu)的是

A、線性鏈表

B、二叉鏈表

C、棧與隊(duì)列

D、循環(huán)隊(duì)列

標(biāo)準(zhǔn)答案:c

知識(shí)點(diǎn)謁析:線性鏈表是線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu);二叉鏈表是二叉樹(shù)的鏈?zhǔn)酱鎯?chǔ)結(jié)

構(gòu);棧與隊(duì)列都是特殊的線性表,屬于邏輯結(jié)構(gòu);循環(huán)隊(duì)列是隊(duì)列的一種存儲(chǔ)結(jié)

構(gòu)。

5、下列數(shù)據(jù)結(jié)構(gòu)中,能直接使用堆排序法進(jìn)行排序的是

A、完全二叉樹(shù)

B、線性鏈表

C、帶鏈的棧

D、帶鏈的隊(duì)列

標(biāo)準(zhǔn)答案:A

知識(shí)點(diǎn)解析?:堆可以用完全二叉樹(shù)表示,因此,完全二叉樹(shù)能直接使用堆排序法進(jìn)

行排序。

6、下列關(guān)于隊(duì)列的敘述中正確的是

A、只能插入元素,而不能刪除元素

B、可以插入元素,也能刪除元素

C、插入元素時(shí)需要移動(dòng)隊(duì)列中所有的元素

D、刪除元素時(shí)需要移動(dòng)隊(duì)列中所有的元素

標(biāo)準(zhǔn)答案:B

知識(shí)點(diǎn)解析:隊(duì)列是一種特殊的線性表,只能在一端插入元素,在另一端刪除元

素,并且在插入與刪除操作時(shí)都不需要移動(dòng)其他元素。

7、下列敘述中正確的是

A、在模塊化程序設(shè)計(jì)中,一個(gè)模塊應(yīng)盡量多的包括與其他模塊聯(lián)系的信息

B、在自頂向下、逐步細(xì)化的設(shè)計(jì)過(guò)程中,首先應(yīng)設(shè)計(jì)解決問(wèn)題的每一個(gè)細(xì)節(jié)

C、在模塊化程序設(shè)計(jì)中,一個(gè)模塊內(nèi)部的控制結(jié)構(gòu)也要符合結(jié)構(gòu)化原則

D、在程序設(shè)計(jì)過(guò)程中,不能同時(shí)采用結(jié)構(gòu)化程序設(shè)計(jì)方法與模塊化程序設(shè)計(jì)方法

標(biāo)準(zhǔn)答案:C

知識(shí)點(diǎn)解析:在模塊化設(shè)計(jì)中,要求將一個(gè)大程序按人們能理解的大小規(guī)模進(jìn)行分

解,使每個(gè)模塊都能易于理解,各模塊的功能盡量單一,各模塊之間的聯(lián)系盡量的

少。因此,選項(xiàng)A中的說(shuō)法是錯(cuò)誤的。自頂向下、逐步細(xì)化的設(shè)計(jì)過(guò)程,主要包

括兩個(gè)方面:一是將一個(gè)復(fù)雜問(wèn)題的解法分解和細(xì)化成由若干模塊組成的層次結(jié)

構(gòu):二是將一個(gè)模塊的功能逐步分解細(xì)化為一系列的處理步驟,直到某種程序設(shè)計(jì)

語(yǔ)言的語(yǔ)句或某種機(jī)器指令。即在自頂向下、逐步細(xì)化的設(shè)計(jì)過(guò)程中,是按照先全

局后局部,先整體后細(xì)節(jié)、先抽象后具體的方法設(shè)計(jì)程序。因此.選項(xiàng)B中的說(shuō)

法也是錯(cuò)誤的。在模塊化程序設(shè)計(jì)中.每一個(gè)模塊完成一個(gè)功能,相對(duì)獨(dú)立,要

求一個(gè)模塊內(nèi)部的控制結(jié)構(gòu)也要符合結(jié)構(gòu)化原則。囚此,選項(xiàng)C中的說(shuō)法是正確

的。由于在模塊化程序設(shè)計(jì)中,一個(gè)模塊內(nèi)部的控制結(jié)構(gòu)也要符合結(jié)構(gòu)化原則,因

此,在程序設(shè)計(jì)過(guò)程中,結(jié)構(gòu)化程序設(shè)計(jì)方法與模塊化程序設(shè)計(jì)方法是要同時(shí)采用

的。因此,選項(xiàng)D中的說(shuō)法是錯(cuò)誤的。

8、數(shù)據(jù)獨(dú)立性是數(shù)據(jù)庫(kù)技術(shù)的重要特點(diǎn)之一。所謂數(shù)據(jù)獨(dú)立性是指

A、數(shù)據(jù)與程序獨(dú)立存放

B、不同的數(shù)據(jù)被存放在不同的文件中

C、不同的數(shù)據(jù)只能被對(duì)應(yīng)的應(yīng)用程序所使用

D、以上二種說(shuō)法都不對(duì)

標(biāo)準(zhǔn)答案:D

知識(shí)點(diǎn)解析:在數(shù)據(jù)庫(kù)系統(tǒng)中,通過(guò)系統(tǒng)提供的映象功能,使數(shù)據(jù)具有兩方面的獨(dú)

立性:一是物理獨(dú)立性。即由于數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)與邏輯結(jié)構(gòu)之間由系統(tǒng)提供映象,

使得當(dāng)數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)改變時(shí),其邏輯結(jié)構(gòu)可以不變,因此,基于邏輯結(jié)構(gòu)的應(yīng)用

程序不必修改。二是邏輯獨(dú)立性。即由于數(shù)據(jù)的局部邏輯結(jié)構(gòu)(它是總體邏輯結(jié)構(gòu)

的一個(gè)子集,由具體的應(yīng)用程序所確定,并且根據(jù)具體的需要可以作一定的修改)

與總體邏輯結(jié)構(gòu)之間也由系統(tǒng)提供映象,使得當(dāng)總體邏輯結(jié)構(gòu)改變時(shí),其局部邏輯

結(jié)構(gòu)可以不變,從而根據(jù)局部邏輯結(jié)構(gòu)編寫(xiě)的應(yīng)用程序也可以不必修改。由此可

知,選項(xiàng)A.B與C中的說(shuō)法都是錯(cuò)誤的。

9、用樹(shù)形結(jié)構(gòu)來(lái)表示實(shí)體之間聯(lián)系的模型稱為

A、關(guān)系模型

B、層次模型

C、網(wǎng)狀模型

D、格式化模型

標(biāo)準(zhǔn)答案:B

知識(shí)點(diǎn)解析:用樹(shù)形結(jié)溝來(lái)表示實(shí)體之間聯(lián)系的模型稱為層次模型。

10、下列敘述中正確的是

A、用E-R圖能夠表示實(shí)體集之間一對(duì)一的聯(lián)系、一對(duì)多的聯(lián)系、多對(duì)多的聯(lián)系

B、用E-R圖只能表示實(shí)體集之間一對(duì)一的聯(lián)系

C、用E-R圖只能表示實(shí)體集之間一對(duì)多的聯(lián)系

D、用E-R圖表示的概念數(shù)據(jù)模型只能轉(zhuǎn)換為關(guān)系數(shù)據(jù)模型

標(biāo)準(zhǔn)答案:A

知識(shí)點(diǎn)解析:用E-R圖可以簡(jiǎn)單明了地描述實(shí)體及其相互之間的聯(lián)系,用E?R圖

還可以方便地描述多個(gè)實(shí)體集之間的聯(lián)系和一個(gè)實(shí)體集內(nèi)部實(shí)體之間的聯(lián)系。因

此,選項(xiàng)A中的說(shuō)法是正確的,而選項(xiàng)B與C中的說(shuō)法都是錯(cuò)誤的。為了建立用

戶所要求的數(shù)據(jù)庫(kù).必須把概念結(jié)構(gòu)(用E-R圖表示的概念數(shù)據(jù)模型)轉(zhuǎn)換為某個(gè)具

體的數(shù)據(jù)庫(kù)管理系統(tǒng)所支持的數(shù)據(jù)模型,這就是邏輯結(jié)構(gòu)設(shè)計(jì)所要完成的任務(wù)。

在已給定數(shù)據(jù)庫(kù)管理系統(tǒng)的情況下,數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)可以分兩步來(lái)進(jìn)行:①將

概念模型轉(zhuǎn)換成一般的數(shù)據(jù)模型;②將一般的數(shù)據(jù)模型轉(zhuǎn)換為特定的數(shù)據(jù)庫(kù)管理

系統(tǒng)所支持的數(shù)據(jù)模型。由此可知,用E-R圖表示的概念數(shù)據(jù)模型不僅能轉(zhuǎn)換為

關(guān)系數(shù)據(jù)模型,還可以轉(zhuǎn)換為其他數(shù)據(jù)模型,如網(wǎng)狀模型和層次模型等。囚此,選

項(xiàng)D中的說(shuō)法也是錯(cuò)誤的。

二、選擇題(本題共25題,每題1.0分,共25分。)

11、在一個(gè)被調(diào)用函數(shù)中,關(guān)于relurn語(yǔ)句使用描述,()是正確的。

A、函數(shù)返回值的類型是在定義函數(shù)時(shí)確定,在函數(shù)調(diào)用時(shí)是可能改變的

B、函數(shù)返回值的類型就是返回值表達(dá)式的值

C、函數(shù)返回值的類型決定/返回值表達(dá)式的類型

D、函數(shù)返回值的類型可以與返回值表達(dá)式的類型不一致

標(biāo)準(zhǔn)答案:C

知識(shí)點(diǎn)解析:函數(shù)返回值的類型決定了返回值表達(dá)式的類型。

12、下面敘述不正確的是()o

A、在函數(shù)中,通過(guò)return語(yǔ)句傳回函數(shù)值

B、在函數(shù)中,可以有多條return語(yǔ)句

C、主函數(shù)名main。后的一對(duì)圓括號(hào)中也可以帶有參數(shù)

D、調(diào)用函數(shù)必須在一條獨(dú)立的語(yǔ)句中完成

標(biāo)準(zhǔn)答案:D

知識(shí)點(diǎn)解析:調(diào)用函數(shù)不必在一條獨(dú)立的語(yǔ)句中完成。

13、形如A::A(A&)的構(gòu)造函數(shù)稱為()<,

A、拷貝函數(shù)

B、復(fù)制函數(shù)

C

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論