首頁 考試吧論壇 Exam8視線 考試商城 網(wǎng)絡(luò)課程 模擬考試 考友錄 實(shí)用文檔 求職招聘 論文下載
2013中考 | 2013高考 | 2013考研 | 考研培訓(xùn) | 在職研 | 自學(xué)考試 | 成人高考 | 法律碩士 | MBA考試
MPA考試 | 中科院
四六級(jí) | 職稱英語 | 商務(wù)英語 | 公共英語 | 托福 | 托業(yè) | 雅思 | 專四專八 | 口譯筆譯 | 博思
GRE GMAT | 新概念英語 | 成人英語三級(jí) | 申碩英語 | 攻碩英語 | 職稱日語 | 日語學(xué)習(xí) |
零起點(diǎn)法語 | 零起點(diǎn)德語 | 零起點(diǎn)韓語
計(jì)算機(jī)等級(jí)考試 | 軟件水平考試 | 職稱計(jì)算機(jī) | 微軟認(rèn)證 | 思科認(rèn)證 | Oracle認(rèn)證 | Linux認(rèn)證
華為認(rèn)證 | Java認(rèn)證
公務(wù)員 | 報(bào)關(guān)員 | 銀行從業(yè)資格 | 證券從業(yè)資格 | 期貨從業(yè)資格 | 司法考試 | 法律顧問 | 導(dǎo)游資格
報(bào)檢員 | 教師資格 | 社會(huì)工作者 | 外銷員 | 國(guó)際商務(wù)師 | 跟單員 | 單證員 | 物流師 | 價(jià)格鑒證師
人力資源 | 管理咨詢師 | 秘書資格 | 心理咨詢師 | 出版專業(yè)資格 | 廣告師職業(yè)水平 | 駕駛員
網(wǎng)絡(luò)編輯 | 公共營(yíng)養(yǎng)師 | 國(guó)際貨運(yùn)代理人 | 保險(xiǎn)從業(yè)資格 | 電子商務(wù)師 | 普通話 | 企業(yè)培訓(xùn)師
營(yíng)銷師
衛(wèi)生資格 | 執(zhí)業(yè)醫(yī)師 | 執(zhí)業(yè)藥師 | 執(zhí)業(yè)護(hù)士
會(huì)計(jì)從業(yè)資格考試會(huì)計(jì)證) | 經(jīng)濟(jì)師 | 會(huì)計(jì)職稱 | 注冊(cè)會(huì)計(jì)師 | 審計(jì)師 | 注冊(cè)稅務(wù)師
注冊(cè)資產(chǎn)評(píng)估師 | 高級(jí)會(huì)計(jì)師 | ACCA | 統(tǒng)計(jì)師 | 精算師 | 理財(cái)規(guī)劃師 | 國(guó)際內(nèi)審師
一級(jí)建造師 | 二級(jí)建造師 | 造價(jià)工程師 | 造價(jià)員 | 咨詢工程師 | 監(jiān)理工程師 | 安全工程師
質(zhì)量工程師 | 物業(yè)管理師 | 招標(biāo)師 | 結(jié)構(gòu)工程師 | 建筑師 | 房地產(chǎn)估價(jià)師 | 土地估價(jià)師 | 巖土師
設(shè)備監(jiān)理師 | 房地產(chǎn)經(jīng)紀(jì)人 | 投資項(xiàng)目管理師 | 土地登記代理人 | 環(huán)境影響評(píng)價(jià)師 | 環(huán)保工程師
城市規(guī)劃師 | 公路監(jiān)理師 | 公路造價(jià)師 | 安全評(píng)價(jià)師 | 電氣工程師 | 注冊(cè)測(cè)繪師 | 注冊(cè)計(jì)量師
化工工程師 | 材料員
繽紛校園 | 實(shí)用文檔 | 英語學(xué)習(xí) | 作文大全 | 求職招聘 | 論文下載 | 訪談 | 游戲
計(jì)算機(jī)等級(jí)考試

2012年全國(guó)計(jì)算機(jī)二級(jí)考試C++筆試模擬試題(四)

2012年全國(guó)計(jì)算機(jī)二級(jí)考試C++筆試模擬試題。

  參考答案及分析

  一、選擇題

  (1)A

  解析: 線性表是一種線性結(jié)構(gòu),數(shù)據(jù)元素在線性表中的位置只取決于它們自己的序號(hào),即數(shù)據(jù)元素之間的相對(duì)位置是線性的;棧、隊(duì)列、線性鏈表實(shí)際上也是線性表,故也是線性結(jié)構(gòu);樹是一種簡(jiǎn)單的非線性結(jié)構(gòu)。

  (2)C

  解析: 循環(huán)鏈表就是將鏈表的最后一個(gè)結(jié)點(diǎn)指向鏈表頭結(jié)點(diǎn)(或第一個(gè)結(jié)點(diǎn)),即p->next=head。

  (3)B

  解析: 當(dāng)數(shù)據(jù)表A中每個(gè)元素距其最終位置不遠(yuǎn),說明數(shù)據(jù)表A按關(guān)鍵字值基本有序,在待排序序列基本有序的情況下,采用插入排序所用時(shí)間最少,故答案為選項(xiàng)B)。

  (4)A

  解析: 程序設(shè)計(jì)應(yīng)該簡(jiǎn)單易懂,語句構(gòu)造應(yīng)該簡(jiǎn)單直接,不應(yīng)該為提高效率而把語句復(fù)雜化。

  (5)A

  解析: 結(jié)構(gòu)化分析的常用工具有數(shù)據(jù)流圖、數(shù)據(jù)字典、判定樹和判定表。而PAD圖是常見的過程設(shè)計(jì)工具中的圖形設(shè)計(jì)。

  (6)D

  解析: 軟件需求是指用戶對(duì)目標(biāo)軟件系統(tǒng)在功能、行為、性能、設(shè)計(jì)約束等方面的期望。

  (7)D

  解析: 需求分析中的常用工具有PAD、PFD及N-S等,而DFD(數(shù)據(jù)流圖)為結(jié)構(gòu)化分析工具。

  (8)C

  解析: 此題屬于記憶性的題目,NULL是指未知的值或無任何值。

  (9)C

  解析: 一旦數(shù)據(jù)庫(kù)中的數(shù)據(jù)遭受破壞,需要及時(shí)進(jìn)行恢復(fù),RDBMS一般都提供此種功能,并由DBA負(fù)責(zé)執(zhí)行故障恢復(fù)功能。

  (10)C

  解析: 數(shù)據(jù)模型所描述的內(nèi)容有3個(gè)部分,它們是數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和數(shù)據(jù)約束。其中,數(shù)據(jù)模型中的數(shù)據(jù)結(jié)構(gòu)主要描述數(shù)據(jù)的類型、內(nèi)容、性質(zhì),以及數(shù)據(jù)庫(kù)的聯(lián)系等;數(shù)據(jù)操作主要是描述在相應(yīng)數(shù)據(jù)結(jié)構(gòu)上的操作類型與操作方式。

  (11)B

  解析: 面向?qū)ο蟪绦蛟O(shè)計(jì)的主要特征是繼承性,封裝性和信息隱藏,多態(tài)性。

  (12)B

  解析: C++語言是對(duì)C語言進(jìn)行了擴(kuò)充,繼承了它的語法,并增加了面向?qū)ο蟮脑O(shè)計(jì)方法。

  (13)C

  解析: 根據(jù)混合運(yùn)算規(guī)則,如果有一個(gè)數(shù)據(jù)是double型,則其他數(shù)據(jù)類型先轉(zhuǎn)化為double型,運(yùn)算的結(jié)果最終也是double型。為保證精度的不丟失,表達(dá)式的數(shù)據(jù)類型是變量和常量中精確度最高的變量類型。

  (14)D

  解析: 邏輯運(yùn)算符"||"表示或的意思。

  (15)B

  解析: 該題是一個(gè)for循環(huán)嵌套語句。第一層for循環(huán)循環(huán)2次,第二層循環(huán)3次,但當(dāng)j等于0和1時(shí),將執(zhí)行continue語句,不執(zhí)行x++運(yùn)算,所以每次執(zhí)行完內(nèi)循環(huán)后,x的增量為1。最后一個(gè)x++運(yùn)算將每次累加起來就是x的值。

  (16)C

  解析: 本題考查簡(jiǎn)單的if…else語句。先執(zhí)行條件if(a  (17)D

  解析: C++語言規(guī)定了一個(gè)字符串結(jié)束標(biāo)志,以字符′\0′代表,在遇到′\0′時(shí),表示字符串結(jié)束,由它前面的字符組成字符串。

  (18)D

  解析: 本題考查字符串?dāng)?shù)組和指針的引用方式。在C++語言中,系統(tǒng)在每個(gè)字符串或數(shù)組的最后自動(dòng)加入一個(gè)字符′\0′,作為字符的結(jié)束標(biāo)志,在本題中,char a[]="It is mine";所表示的a字符串實(shí)際含有11個(gè)字符。

  (19)B

  解析: 在C++語言中,調(diào)用函數(shù)不可能改變實(shí)參指針變量的值,但可以改變實(shí)參指針變量所指變量的值。了解了實(shí)參指針變量的改變情況,本題只剩下簡(jiǎn)單的"加減法"了。

  (20)D

  解析: 本題中直接使用指針變量k,但在使用時(shí)要注意對(duì)k的指針運(yùn)算,此外,一開始應(yīng)認(rèn)為*k的值為數(shù)組中的某一下標(biāo)值,即*k=0。

  (21)B

  解析: 按位與運(yùn)算符"&"是雙目運(yùn)算符。其功能是參與運(yùn)算的兩數(shù)各對(duì)應(yīng)的二進(jìn)位相與。只有對(duì)應(yīng)的兩個(gè)二進(jìn)位均為1時(shí),結(jié)果位才為1 ,否則為0。參與運(yùn)算的數(shù)以補(bǔ)碼方式出現(xiàn)。邏輯與運(yùn)算符"&&"需要兩邊的結(jié)果都為1時(shí),其結(jié)果才為1。

  (22)D

  解析: C++的this指針是系統(tǒng)默認(rèn)產(chǎn)生的一個(gè)指針,它是const的,所以是不能夠被改變,不能夠被賦值的。

  (23)B

  解析: 類D繼承了類C和類B,所以在構(gòu)造的時(shí)候分別構(gòu)造類B和類C。

  (24)D

  解析: 虛函數(shù)一定不能定義為靜態(tài)的。虛函數(shù)可以聲明為友元,子類也不是必須重定義父類的虛函數(shù),若在重定義虛函數(shù)時(shí)使用了virtual,則該重定義函數(shù)不一定還是虛函數(shù)。

  (25)A

  解析: C++中用成員函數(shù)重載++x為:x. operator++(),用友元函數(shù)重載++x為:operator++(x),用成員函數(shù)重載x/y為:x. operator/(y),用友元函數(shù)重載x/y為:operator/(x,y)。

  (26)C

  解析: C++語言中默認(rèn)小數(shù)的輸出位一共是6位,fixed的意義是在小數(shù)點(diǎn)后保留6位。

  (27)D

  解析: 選項(xiàng)D)第一層括號(hào)中為數(shù)組a中第i項(xiàng)元素的值,外面再加指針運(yùn)算符沒有意義。

  (28)B

  解析: 本題的運(yùn)算過程是fun((int)fun(a+c,b),a-c),fun((int)fun(10,5),2-8),fun((int)15.000000,-6),fun(15,-6)=9。

  (29)A

  解析: 本題中有成員函數(shù)和它的重載函數(shù),要注意它們的不同,在本題中先調(diào)用了init函數(shù),初始化了X,Y,都為0,valueX(5);又將X變?yōu)?,所以輸出5和0,然后初始化init(6,2),接著又valueY(4);將X,Y設(shè)為6和4,所以輸出6和4。

  (30)B

  解析: C++基本的性質(zhì)就是它的封裝性,而封裝性主要是靠類來實(shí)現(xiàn)的。

  (31)A

  解析: 左移運(yùn)算符"<<"是雙目運(yùn)算符。其功能把"<<"左邊的運(yùn)算數(shù)的各二進(jìn)位全部左移若干位,由"<<"右邊的數(shù)指定移動(dòng)的位數(shù),高位丟棄,低位補(bǔ)0。左移1位,相當(dāng)于該數(shù)乘以2。

  (32)B

  解析: 這是一種簡(jiǎn)單的情況:不帶參數(shù)的宏。關(guān)鍵要注意在對(duì)2*M+1進(jìn)行宏替換時(shí),要將宏名M原樣替換,得到NUM的形式為2*N+1+1(千萬不要隨意把給N+1加上小括號(hào),使NUM變?yōu)?*(N+1)+1,這就是宏名和變量名之間的區(qū)別)。

  (33)B

  解析: 在函數(shù)體語句中的b+=*a;的*是指針運(yùn)算符(也稱間接訪問運(yùn)算符),*a就是main函數(shù)中a的值。

  (34)B

  解析: C++語言函數(shù)中定義的變量都是屬于這個(gè)函數(shù)的局部變量。

  (35)B

  解析: fib(3)=fib(2)+ fib(1),而fib(2)的返回值為2,fib(1)的返回值也為2,故輸出的fib(3)的值為4。

  二、填空題

  (1)0

  解析: 根據(jù)冒泡排序算法思想可知,若待排序的初始序列為"正序"序列,則只需進(jìn)行一趟排序,在排序過程中進(jìn)行n-1次關(guān)鍵字間的比較,且不移動(dòng)和交換記錄,這種情況是冒泡排序的最好情況,故冒泡排序算法在最好的情況下的元素交換次數(shù)為0。

  (2)O(nlog2n)

  解析: 在最壞情況下,冒泡排序所需要的比較次數(shù)為n(n-1)/2;簡(jiǎn)單插入排序所需要的比較次數(shù)為n(n-1)/2;希爾排序所需要的比較次數(shù)為O(n15);堆排序所需要的比較次數(shù)為O(nlog2n)。

  (3)46

  解析: 串s中共有9個(gè)字符,由于串中字符各不相同,則其子串中有0個(gè)字符的1個(gè)(空串),1個(gè)字符的9個(gè),2個(gè)字符的8個(gè),3個(gè)字符的7個(gè),4個(gè)字符的6個(gè),5個(gè)字符的5個(gè),6個(gè)字符的4個(gè),7個(gè)字符的3個(gè),8個(gè)字符的2個(gè),9個(gè)字符的1個(gè),共有1+2+3+4+5+6+7+8+9+1=46。

  (4)軟件工具

  (5)謂詞演算

  解析: 關(guān)系數(shù)據(jù)庫(kù)中的關(guān)系演算包括元組關(guān)系演算和域關(guān)系演算。二者都是由原子公式組成的公式。而這些關(guān)系演算都是以數(shù)理邏輯中的謂詞演算為基礎(chǔ)的。

  (6)sizeof

  解析: C++語言中關(guān)鍵字運(yùn)算符有3個(gè)分別new,delete和sizeof。new 是申請(qǐng)內(nèi)存,delete是釋放內(nèi)存,sizeof是求字節(jié)數(shù)。

  (7)max=(a>b)?a:b;

  解析: 條件運(yùn)算符要求有三個(gè)操作對(duì)象,稱三目(元)運(yùn)算符,它是C++語言中惟一的一個(gè)三目運(yùn)算符。條件表達(dá)式的一般形式為:表達(dá)式1?表達(dá)式2:表達(dá)式3。所以我們可以寫成(a>b)?a:b,它是一個(gè)"條件表達(dá)式"。執(zhí)行順序是如果(a>b)條件為真,則條件表達(dá)式取值a作為整個(gè)表達(dá)式的值,否則取值b作為整個(gè)表達(dá)式的值。

  (8)defg

  解析: 本題中,給數(shù)組s中的第5個(gè)元素s[4]賦以′\0′,則s數(shù)組中只有前4個(gè)元素有效,輸出結(jié)果為defg。

  (9)j+=2~a[i]>=a[j]`a[i]>a[j]

  解析: strlen函數(shù)是測(cè)試字符串長(zhǎng)度的函數(shù),函數(shù)的值為字符串中的實(shí)際長(zhǎng)度,不包括′\0′在內(nèi)。

  (10)靜態(tài)~非靜態(tài)

  解析: 靜態(tài)成員函數(shù)可以直接訪問該類中的靜態(tài)數(shù)據(jù)成員,而不能訪問該類中的非靜態(tài)數(shù)據(jù)成員。

  (11)virtual int A()= 0;

  解析: C++語言中的純虛函數(shù)是一種特殊的函數(shù),它沒有自己的定義,只有聲明,純虛函數(shù)與虛函數(shù)聲明的不同就在于在函數(shù)后面加上了"=0"。

  (12)x+y++`x+(y++)

  解析: 因?yàn)閥.operator++(0)是對(duì)成員y重載運(yùn)算符,所以是成員重載,在參數(shù)表中又有一個(gè)參數(shù),是重載后綴++,即是x+(y++)。

  (13)fin

  解析: 如果程序沒有用close()主動(dòng)關(guān)閉文件,則在文件流對(duì)象退出作用域時(shí),被調(diào)用的析構(gòu)函數(shù)會(huì)關(guān)閉對(duì)象所聯(lián)系的文件。但應(yīng)及時(shí)關(guān)閉,以便盡早釋放占用的系統(tǒng)資源并將文件置于更安全的狀態(tài)。

上一頁  1 2 3 4 5 6 7  下一頁

  相關(guān)推薦:

  2012年計(jì)算機(jī)三級(jí)考試PC技術(shù)模擬試題考答案匯總

  2012年計(jì)算機(jī)等級(jí)考試二級(jí)VB重點(diǎn)知識(shí)匯總

  2012年下半年計(jì)算機(jī)等級(jí)考試報(bào)名時(shí)間及入口匯總

文章搜索
版權(quán)聲明:如果計(jì)算機(jī)等級(jí)考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請(qǐng)與我們聯(lián)系800@exam8.com,我們將會(huì)及時(shí)處理。如轉(zhuǎn)載本計(jì)算機(jī)等級(jí)考試網(wǎng)內(nèi)容,請(qǐng)注明出處。