2017年計(jì)算機(jī)二級(jí)考試公共基礎(chǔ)知識(shí)沖刺試題及答案2

字號(hào):


    一、選擇題
    (1) 下面敘述正確的是______。
    A. 算法的執(zhí)行效率與數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)無(wú)關(guān)
    B. 算法的空間復(fù)雜度是指算法程序中指令(或語(yǔ)句)的條數(shù)
    C. 算法的有窮性是指算法必須能在執(zhí)行有限個(gè)步驟之后終止
    D. 以上三種描述都不對(duì)
    (1)
    [答案]C
    [考點(diǎn)]程序設(shè)計(jì)基礎(chǔ)
    [評(píng)析]
    時(shí)間復(fù)雜度:在運(yùn)行算法時(shí)所耗費(fèi)的時(shí)間為f(n)(即 n的函數(shù))。
    空間復(fù)雜度:實(shí)現(xiàn)算法所占用的空間為g(n)(也為n的函數(shù))。
    A應(yīng)為有關(guān)。
    (2) 以下數(shù)據(jù)結(jié)構(gòu)中不屬于線性數(shù)據(jù)結(jié)構(gòu)的是______。
    A. 隊(duì)列
    B. 線性表
    C. 二叉樹
    D. 棧
    (2)
    [答案]C
    [考點(diǎn)]數(shù)據(jù)結(jié)構(gòu)與算法
    [評(píng)析]
    一棵二叉樹的一個(gè)結(jié)點(diǎn)下面可以有2個(gè)子結(jié)點(diǎn),故不是線性結(jié)構(gòu)(通俗地理解,看是否能排成條直線)。
    A是先進(jìn)先出的線性表;B是宏觀概念,包括順序表、鏈表、堆棧、隊(duì)列…;D是先進(jìn)后出的線性表
    (3) 在一棵二叉樹上第5層的結(jié)點(diǎn)數(shù)最多是______。
    A. 8
    B. 16
    C. 32
    D. 15
    (3)
    [答案]B
    [考點(diǎn)]數(shù)據(jù)結(jié)構(gòu)與算法
    [評(píng)析]依次從上到下,可得出:
    第1層結(jié)點(diǎn)數(shù)為1;
    第2層結(jié)點(diǎn)數(shù)為2*1=2;
    第3層結(jié)點(diǎn)數(shù)為2*2=4;
    第n層結(jié)點(diǎn)數(shù)為2的n-1次冪,如圖所示
    (4) 下面描述中,符合結(jié)構(gòu)化程序設(shè)計(jì)風(fēng)格的是______。
    A. 使用順序、選擇和重復(fù)(循環(huán))三種基本控制結(jié)構(gòu)表示程序的控制邏輯
    B. 模塊只有一個(gè)入口,可以有多個(gè)出口
    C. 注重提高程序的執(zhí)行效率
    D. 不使用goto語(yǔ)句
    (4)
    [答案]A
    [考點(diǎn)]程序設(shè)計(jì)基礎(chǔ)
    [評(píng)析]
    B沒這規(guī)定,模塊之間的可以通過(guò)多個(gè)接口來(lái)耦合
    C結(jié)構(gòu)化程序設(shè)計(jì)提倡程序的可讀性(可理解性),超過(guò)程序執(zhí)行效率的要求
    D結(jié)構(gòu)化程序設(shè)計(jì)限制goto語(yǔ)句的使用,因?yàn)間oto語(yǔ)句的功能可以用三種基本的控制結(jié)構(gòu)來(lái)代替,但也不是絕對(duì)不能用,只是限制使用(少用)。
    (5) 下面概念中,不屬于面向?qū)ο蠓椒ǖ氖莀_____。
    A. 對(duì)象
    B. 繼承
    C. 類
    D. 過(guò)程調(diào)用
    (5)
    [答案]D
    [考點(diǎn)]軟件工程基礎(chǔ)
    [評(píng)析]
    面向?qū)ο?對(duì)象+類+繼承+通過(guò)消息的通信
    對(duì)象:一組屬性及其上的操作的封裝體
    類:一組有相同屬性和操作的對(duì)象的集合
    繼承:一個(gè)類為另一個(gè)類上的擴(kuò)充的方式,子類繼承父類,主要目的是代碼復(fù)用
    消息:對(duì)象間通信的手段
    D是結(jié)構(gòu)化程序設(shè)計(jì)或過(guò)程式(函數(shù)式)語(yǔ)言中的,一般的面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言兼容這種方式,但不是其特征,故選項(xiàng)為D
    (6) 在結(jié)構(gòu)化方法中,用數(shù)據(jù)流程圖(DFD)作為描述工具的軟件開發(fā)階段是______。
    A. 可行性分析
    B. 需求分析
    C. 詳細(xì)設(shè)計(jì)
    D. 程序編碼
    (6)
    [答案]B
    [考點(diǎn)]軟件工程基礎(chǔ)
    [評(píng)析]
    分析員對(duì)用戶的要求作出分析,并畫出數(shù)據(jù)流程圖,該圖通俗易懂,不涉及到如何在計(jì)算機(jī)上實(shí)現(xiàn),這是需求分析階段。
    軟件工程中的瀑布模型:
    問題定義,可行性研究,需求分析,概要設(shè)計(jì),詳細(xì)設(shè)計(jì),編碼,測(cè)試,運(yùn)行和維護(hù)
    相關(guān)鏈點(diǎn):
    層次圖和HIPO圖是概要設(shè)計(jì)中的工具圖;程序流程圖、N-S圖、問題分析PAD圖、設(shè)計(jì)程序語(yǔ)言PDL是詳細(xì)設(shè)計(jì)中的工具圖
    (7) 在軟件開發(fā)中,下面任務(wù)不屬于設(shè)計(jì)階段的是______。
    A. 數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)
    B. 給出系統(tǒng)模塊結(jié)構(gòu)
    C. 定義模塊算法
    D. 定義需求并建立系統(tǒng)模型
    (7)
    [答案]D
    [考點(diǎn)]軟件工程基礎(chǔ)
    [評(píng)析]
    A、B為概要設(shè)計(jì)中的,C為詳細(xì)設(shè)計(jì)中的,D為分析階段中的
    (8) 數(shù)據(jù)庫(kù)系統(tǒng)的核心是______。
    A. 數(shù)據(jù)模型
    B. 數(shù)據(jù)庫(kù)管理系統(tǒng)
    C. 軟件工具
    D. 數(shù)據(jù)庫(kù)
    (8)
    [答案]B
    [考點(diǎn)]數(shù)據(jù)庫(kù)設(shè)計(jì)基礎(chǔ)
    [評(píng)析]
    數(shù)據(jù)庫(kù)管理系統(tǒng)DBMS是數(shù)據(jù)庫(kù)系統(tǒng)的核心,上層與用戶打交道,底層與操作系統(tǒng)接口
    注意點(diǎn):數(shù)據(jù)庫(kù)系統(tǒng)與數(shù)據(jù)庫(kù)管理系統(tǒng)的區(qū)別
    前者指的一整套業(yè)務(wù)系統(tǒng),包括用戶、應(yīng)用程序、DBMS及操作系統(tǒng)的支持
    (9) 下列敘述中正確的是______。
    A. 數(shù)據(jù)庫(kù)是一個(gè)獨(dú)立的系統(tǒng),不需要操作系統(tǒng)的支持
    B. 數(shù)據(jù)庫(kù)設(shè)計(jì)是指設(shè)計(jì)數(shù)據(jù)庫(kù)管理系統(tǒng)
    C. 數(shù)據(jù)庫(kù)技術(shù)的根本目標(biāo)是要解決數(shù)據(jù)共享的問題
    D. 數(shù)據(jù)庫(kù)系統(tǒng)中,數(shù)據(jù)的物理結(jié)構(gòu)必須與邏輯結(jié)構(gòu)一致
    (9)
    [答案]C
    [考點(diǎn)]數(shù)據(jù)庫(kù)設(shè)計(jì)基礎(chǔ)
    [評(píng)析]
    暈倒,數(shù)據(jù)庫(kù)管理系統(tǒng)是人人都可設(shè)計(jì)的嗎?那SYBASE和ORACLE等不都沒飯吃了?普通人的數(shù)據(jù)庫(kù)設(shè)計(jì)就是在DBMS的支持下設(shè)計(jì)幾張表格,命幾個(gè)名而已;D也錯(cuò)了的,數(shù)據(jù)庫(kù)具有物理獨(dú)立性和邏輯獨(dú)立性,比如QQ是一個(gè)完整的數(shù)據(jù)庫(kù)系統(tǒng),我們使用的只是客戶端應(yīng)用程序,其數(shù)據(jù)庫(kù)在騰訊的服務(wù)器上,物理獨(dú)立性呢指的是數(shù)據(jù)庫(kù)的底層結(jié)構(gòu)改變了,而QQ的客戶端不用變,對(duì)應(yīng)地,邏輯獨(dú)立性是指QQ的客戶端改變了,數(shù)指據(jù)庫(kù)的結(jié)構(gòu)不用變了,否則,這么多QQ版本,那騰訊的服務(wù)器不是亂了套?
    (10) 下列模式中,能夠給出數(shù)據(jù)庫(kù)物理存儲(chǔ)結(jié)構(gòu)與物理存取方法的是______。
    A. 內(nèi)模式
    B. 外模式
    C. 概念模式
    D. 邏輯模式
    (10)
    [答案]A
    [考點(diǎn)]數(shù)據(jù)庫(kù)設(shè)計(jì)基礎(chǔ)
    [評(píng)析]
    通過(guò)前些題可知道,數(shù)據(jù)庫(kù)的物理結(jié)構(gòu)最底層,即對(duì)應(yīng)內(nèi)模式,對(duì)應(yīng)的模式映像為內(nèi)模式/模式(概念模式映像),邏輯獨(dú)立性則對(duì)應(yīng)于模式/外模式映像。
    (11) 算法的時(shí)間復(fù)雜度是指______。
    A. 執(zhí)行算法程序所需要的時(shí)間
    B. 算法程序的長(zhǎng)度
    C. 算法執(zhí)行過(guò)程中所需要的基本運(yùn)算次數(shù)
    D. 算法程序中的指令條數(shù)
    (11)
    [答案]C
    [考點(diǎn)]數(shù)據(jù)結(jié)構(gòu)與算法
    [評(píng)析]
    算法的復(fù)雜度分時(shí)間復(fù)雜度和空間復(fù)雜度。
    時(shí)間復(fù)雜度:在運(yùn)行算法時(shí)所耗費(fèi)的時(shí)間為f(n)(即 n的函數(shù))。
    空間復(fù)雜度:實(shí)現(xiàn)算法所占用的空間為g(n)(也為n的函數(shù))。
    稱O(f(n))和O(g(n))為該算法的復(fù)雜度。
    簡(jiǎn)單的例子比如常見的順序結(jié)構(gòu)時(shí)間復(fù)雜度為O(1),1層循環(huán)里面次數(shù)為n,時(shí)間復(fù)雜度就是O(n),2層循環(huán)for i=1 to n,for j=1 to n算法時(shí)間復(fù)雜度為O(n2)(里面為n的平方),復(fù)雜度主要用于算法的效率比較與優(yōu)化,比如排序,查找…
    (12) 下列敘述中正確的是______。
    A. 線性表是線性結(jié)構(gòu)
    B. 棧與隊(duì)列是非線性結(jié)構(gòu)
    C. 線性鏈表是非線性結(jié)構(gòu)
    D. 二叉樹是線性結(jié)構(gòu)
    (12)
    [答案]A
    [考點(diǎn)]數(shù)據(jù)結(jié)構(gòu)與算法
    [評(píng)析]
    一棵二叉樹的一個(gè)結(jié)點(diǎn)下面可以有2個(gè)子結(jié)點(diǎn),故不是線性結(jié)構(gòu)(通俗地理解,看是否能排成條直線)。
    此題與(2)題類似
    (13) 設(shè)一棵完全二叉樹共有699個(gè)結(jié)點(diǎn),則在該二叉樹中的葉子結(jié)點(diǎn)數(shù)為______。
    A. 349
    B. 350
    C. 255
    D. 351
    (13)
    [答案]B
    [考點(diǎn)]數(shù)據(jù)結(jié)構(gòu)與算法
    [評(píng)析]
    完全二叉樹:若二叉樹中最多只有最下面兩層的結(jié)點(diǎn)的度可以小于2,并且最下面一層的結(jié)點(diǎn)(葉結(jié)點(diǎn))都依次排列在該層最左邊的位置上,這樣的二叉樹為完全二叉樹。
    比如圖:
    完全二叉樹除葉結(jié)點(diǎn)層外的所有結(jié)點(diǎn)數(shù)(葉結(jié)點(diǎn)層以上所有結(jié)點(diǎn)數(shù))為奇數(shù),此題中,699是奇數(shù),葉結(jié)點(diǎn)層以上的所有結(jié)點(diǎn)數(shù)為保證是奇數(shù),則葉結(jié)點(diǎn)數(shù)必是偶數(shù),這樣我們可以立即選出答案為B!
    如果完全二叉樹的葉結(jié)點(diǎn)都排滿了,則是滿二叉樹,易得滿二叉樹的葉結(jié)點(diǎn)數(shù)是其以上所有層結(jié)點(diǎn)數(shù)+1比如圖:
    此題的其實(shí)是一棵滿二叉樹,我們根據(jù)以上性質(zhì),699+1=700,700/2=350,即葉結(jié)點(diǎn)數(shù)為350,葉結(jié)點(diǎn)層以上所有結(jié)點(diǎn)數(shù)為350-1=349。
    (14) 結(jié)構(gòu)化程序設(shè)計(jì)主要強(qiáng)調(diào)的是______。
    A. 程序的規(guī)模
    B. 程序的易讀性
    C. 程序的執(zhí)行效率
    D. 程序的可移植性
    (14)
    [答案]B
    [考點(diǎn)]程序設(shè)計(jì)基礎(chǔ)
    [評(píng)析]
    又是結(jié)構(gòu)化的問題,何謂結(jié)構(gòu)化?
    簡(jiǎn)單地比如:
    VB: If...End If
    C: if..{...}
    Pascle: Begin ...End
    我們?cè)?結(jié)構(gòu)"的中間寫代碼,從哪執(zhí)行到哪結(jié)束我們能很快抓住!
    此題中重要性為:B>C>D
    (15) 在軟件生命周期中,能準(zhǔn)確地確定軟件系統(tǒng)必須做什么和必須具備哪些功能的階段是______。
    A. 概要設(shè)計(jì)
    B. 詳細(xì)設(shè)計(jì)
    C. 可行性分析
    D. 需求分析
    (15)
    [答案]D
    [考點(diǎn)]軟件工程基礎(chǔ)
    [評(píng)析]
    題中所述為需求分析
    可行性研究包括經(jīng)濟(jì)可行性、技術(shù)可行性、操作可行性,即以最小的代價(jià)確定系統(tǒng)的規(guī)模是否現(xiàn)實(shí)
    概要設(shè)計(jì)的任務(wù)是確定軟件的總體結(jié)構(gòu)、子結(jié)構(gòu)和模塊的劃分
    詳細(xì)設(shè)計(jì)的任務(wù)是確定每一模塊的實(shí)現(xiàn)細(xì)節(jié),包括數(shù)據(jù)結(jié)構(gòu)、算法和接口
    也許有人這么久了還不知道什么叫系統(tǒng),什么叫模塊。
    暈倒,這里羅嗦一下,軟件工程中的系統(tǒng)指的整個(gè)軟件系統(tǒng),比如QQ的所有東西,我們用的是客戶端程序,實(shí)際的東西放在騰訊公司的服務(wù)器上,主要是數(shù)據(jù)庫(kù),包括在中間的傳輸過(guò)程,這一整個(gè)相關(guān)的東東都叫做OICQ的系統(tǒng);什么叫模塊,這里不單指如VB里的"標(biāo)準(zhǔn)模塊"、"類模塊",也不單指一個(gè)窗體或者一個(gè)文件,宏觀上講,軟件工程中把一種功能或相關(guān)功能把它做成一個(gè)模塊,這個(gè)模塊有可能是一個(gè)過(guò)程,有可能是一個(gè)函數(shù)…從功能角度度量模塊內(nèi)的聯(lián)系為模塊的內(nèi)聚(一般來(lái)說(shuō)越強(qiáng)越好,不易出錯(cuò));模塊之間的聯(lián)系為耦合,比如我們編程中常用把一實(shí)參的值賦給了函數(shù)中的形參,使函數(shù)完成某一功能,耦合度越低越好,獨(dú)立性就強(qiáng);
    何謂獨(dú)立性?比如我們二級(jí)編程都有考到全局變量、局部變量,函數(shù)中的局部變量獨(dú)立性很強(qiáng),函數(shù)外無(wú)法訪問…
    何謂變量?暈~~~~~~~如果這都要說(shuō),那你可以不用考二級(jí)了。
    (16) 數(shù)據(jù)流圖用于抽象描述一個(gè)軟件的邏輯模型,數(shù)據(jù)流圖由一些特定的圖符構(gòu)成。下列圖符名標(biāo)識(shí)的圖符不屬于數(shù)據(jù)流圖合法圖符的是______。
    A. 控制流
    B. 加工
    C. 數(shù)據(jù)存儲(chǔ)
    D. 源和潭
    (16)
    [答案]A
    [考點(diǎn)]軟件工程基礎(chǔ)
    [評(píng)析]
    數(shù)據(jù)流圖用于需求分析階段,在此階段我們只考慮大致的數(shù)據(jù)流流向,而不關(guān)心內(nèi)部具體的處理,以及如何在計(jì)算機(jī)上實(shí)現(xiàn),不必討論控制流,我們只關(guān)心的:數(shù)據(jù)流、數(shù)據(jù)儲(chǔ)存、變換/加工(相當(dāng)于一個(gè)黑盒,不關(guān)心內(nèi)部細(xì)節(jié))、外部實(shí)體,數(shù)據(jù)流圖通俗易懂,因?yàn)樗h(yuǎn)離了計(jì)算機(jī),用戶(無(wú)需懂編程)和軟件人員都易接受。
    比如一個(gè)簡(jiǎn)單的軟件系統(tǒng)邏輯模型:
    輸入流和輸出流即D中的源和潭。
    (17) 軟件需求分析階段的工作,可以分為四個(gè)方面:需求獲取、需求分析、編寫需求規(guī)格說(shuō)明書以及______。
    A. 階段性報(bào)告
    B. 需求評(píng)審
    C. 總結(jié)
    D. 都不正確
    (17)
    [答案]B
    [考點(diǎn)]軟件工程基礎(chǔ)
    [評(píng)析]
    評(píng)審(復(fù)審)每階段都有,把前三個(gè)方面說(shuō)完了,還剩什么呢?
    此題需要記一下,至于各名詞的解釋,顧名即可思義。
    (18) 下述關(guān)于數(shù)據(jù)庫(kù)系統(tǒng)的敘述中正確的是______。
    A. 數(shù)據(jù)庫(kù)系統(tǒng)減少了數(shù)據(jù)冗余
    B. 數(shù)據(jù)庫(kù)系統(tǒng)避免了一切冗余
    C. 數(shù)據(jù)庫(kù)系統(tǒng)中數(shù)據(jù)的一致性是指數(shù)據(jù)類型的一致
    D. 數(shù)據(jù)庫(kù)系統(tǒng)比文件系統(tǒng)能管理更多的數(shù)據(jù)
    (18)
    [答案]A
    [考點(diǎn)]數(shù)據(jù)庫(kù)設(shè)計(jì)基礎(chǔ)
    [評(píng)析]
    關(guān)于數(shù)據(jù)管理技術(shù)的三個(gè)階段如下:
    1.人工管理階段
    人工管理數(shù)據(jù)的特點(diǎn)是:
    (1)數(shù)據(jù)不保存。
    (2)數(shù)據(jù)無(wú)專門軟件進(jìn)行管理。
    (3)數(shù)據(jù)不共享。
    (4)數(shù)據(jù)不具有獨(dú)立性。
    2.文件系統(tǒng)階段
    該階段的數(shù)據(jù)管理具有如下特點(diǎn):
    (1)數(shù)據(jù)可以長(zhǎng)期保存。
    (2)由文件系統(tǒng)管理數(shù)據(jù)。文件系統(tǒng)管理數(shù)據(jù)存在如下缺點(diǎn):
    (1)數(shù)據(jù)共享性差,數(shù)據(jù)冗余度大。
    (2)數(shù)據(jù)獨(dú)立性差。
    3.數(shù)據(jù)庫(kù)系統(tǒng)階段
    與人工管理和文件系統(tǒng)階段相比較,數(shù)據(jù)庫(kù)系統(tǒng)階段具有如下的特點(diǎn):
    (1)數(shù)據(jù)結(jié)構(gòu)化
    (2)數(shù)據(jù)共享性高、冗余度小、易擴(kuò)充
    (3)數(shù)據(jù)獨(dú)立性高
    (4)統(tǒng)一的數(shù)據(jù)管理和控制數(shù)據(jù)庫(kù)管理系統(tǒng)必須提供以下幾個(gè)方面的數(shù)據(jù)控制和保護(hù)功能:
    (1)數(shù)據(jù)的安全性(security)保護(hù)。
    (2)數(shù)據(jù)的完整性(integrity)控制。
    (3)數(shù)據(jù)庫(kù)恢復(fù)(recovery)。
    (4)并發(fā)(concurrency)控制。
    (5)事務(wù)(transaction)支持。
    B錯(cuò),為什么會(huì)有關(guān)系規(guī)范化理論,其主要目的之一是減少數(shù)據(jù)的冗余,說(shuō)明數(shù)據(jù)庫(kù)系統(tǒng)還存在一定的冗余;C錯(cuò),數(shù)據(jù)完整性約束指一組完整性規(guī)則的集合,不一定是數(shù)據(jù)類型的一致性;D項(xiàng)也太菜鳥了吧,數(shù)據(jù)能管理存放多少數(shù)據(jù)主要看機(jī)子硬盤空間和一些相關(guān)的設(shè)置,比如在數(shù)據(jù)庫(kù)管理系統(tǒng)中設(shè)置某個(gè)用戶的空間為多少。
    (19) 關(guān)系表中的每一橫行稱為一個(gè)______。
    A. 元組
    B. 字段
    C. 屬性
    D. 碼
    (19)
    [答案]A
    [考點(diǎn)]數(shù)據(jù)庫(kù)設(shè)計(jì)基礎(chǔ)
    [評(píng)析]
    字段:列,屬性名
    屬性:實(shí)體的某一特性,如學(xué)生表中的學(xué)號(hào)、姓名…
    碼(主健):元組(實(shí)體)的惟一標(biāo)識(shí),比如學(xué)生有同名的,但學(xué)號(hào)是惟一的。
    比如表:
    學(xué)號(hào) 姓名 性別 院系
    0221301 陳朝霞 女 油院礦機(jī)
    0221310 周建峰 男 西南工業(yè)大學(xué)機(jī)電院
    0221326 曾曉明 男 西南工業(yè)大學(xué)機(jī)電院
    0221315 郭文廣 男 西南工業(yè)大學(xué)機(jī)電院
    0123456 茂葉 男 油院機(jī)電&軟件
    (20) 數(shù)據(jù)庫(kù)設(shè)計(jì)包括兩個(gè)方面的設(shè)計(jì)內(nèi)容,它們是______。
    A. 概念設(shè)計(jì)和邏輯設(shè)計(jì)
    B. 模式設(shè)計(jì)和內(nèi)模式設(shè)計(jì)
    C. 內(nèi)模式設(shè)計(jì)和物理設(shè)計(jì)
    D. 結(jié)構(gòu)特性設(shè)計(jì)和行為特性設(shè)計(jì)
    (20)
    [答案]A
    [考點(diǎn)]數(shù)據(jù)庫(kù)設(shè)計(jì)基礎(chǔ)
    [評(píng)析]
    需求分析--(需求說(shuō)明)-->概念設(shè)計(jì)--(概念結(jié)構(gòu))-->邏輯結(jié)構(gòu)設(shè)計(jì)--(邏輯結(jié)構(gòu))-->物理設(shè)計(jì)--(物理結(jié)構(gòu))-->
    (21) 算法的空間復(fù)雜度是指______。
    A. 算法程序的長(zhǎng)度
    B. 算法程序中的指令條數(shù)
    C. 算法程序所占的存儲(chǔ)空間
    D. 算法執(zhí)行過(guò)程中所需要的存儲(chǔ)空間
    (21)
    [答案]D
    [考點(diǎn)]程序設(shè)計(jì)基礎(chǔ)
    [評(píng)析]
    時(shí)間復(fù)雜度:在運(yùn)行算法時(shí)所耗費(fèi)的時(shí)間為f(n)(即 n的函數(shù))。
    空間復(fù)雜度:實(shí)現(xiàn)算法所占用的空間為g(n)(也為n的函數(shù))。
    算法為什么會(huì)占用存儲(chǔ)存空間?
    主要是內(nèi)存空間,因?yàn)樗惴ㄖ械淖兞俊⒌刂返鹊韧ǔ14嬖趦?nèi)存中(如果在虛存、緩存,甚至已在CPU中運(yùn)行,也算占用了存儲(chǔ)空間)。
    (22) 下列關(guān)于棧的敘述中正確的是______。
    A. 在棧中只能插入數(shù)據(jù)
    B. 在棧中只能刪除數(shù)據(jù)
    C. 棧是先進(jìn)先出的線性表
    D. 棧是先進(jìn)后出的線性表
    (22)
    [答案]D
    [考點(diǎn)]數(shù)據(jù)結(jié)構(gòu)與算法
    [評(píng)析]
    此題為基本概念,必記,注意:隊(duì)列是先進(jìn)先出的線性表,結(jié)合起來(lái)記不要搞混。
    (23) 在深度為5的滿二叉樹中,葉子結(jié)點(diǎn)的個(gè)數(shù)為______。
    A. 32
    B. 31
    C. 16
    D. 15
    (23)
    [答案]C
    [考點(diǎn)]數(shù)據(jù)結(jié)構(gòu)與算法
    [評(píng)析]
    首先搞清楚滿二叉樹與完全二叉樹之間的區(qū)別,前面已解釋過(guò)。
    依次從上到下,可得出:
    第1層結(jié)點(diǎn)數(shù)為1;
    第2層結(jié)點(diǎn)數(shù)為2*1=2;
    第3層結(jié)點(diǎn)數(shù)為2*2=4;
    第n層結(jié)點(diǎn)數(shù)為2的n-1次冪,如圖所示
    (24) 對(duì)建立良好的程序設(shè)計(jì)風(fēng)格,下面描述正確的是______。
    A. 程序應(yīng)簡(jiǎn)單、清晰、可讀性好
    B. 符號(hào)名的命名要符合語(yǔ)法
    C. 充分考慮程序的執(zhí)行效率
    D. 程序的注釋可有可無(wú)
    (24)
    [答案]A
    [考點(diǎn)]程序設(shè)計(jì)基礎(chǔ)
    [評(píng)析]
    結(jié)構(gòu)化程序設(shè)計(jì)中力求程序的可讀性(如代碼清晰,結(jié)構(gòu)明了,附加注釋……),故D錯(cuò);
    如果程序?qū)懙亩际清e(cuò)的,談何風(fēng)格?如果符號(hào)名的命名不符合語(yǔ)法,編譯會(huì)報(bào)錯(cuò),也是很基本的錯(cuò)誤,B錯(cuò);
    追求程序的可讀性要高于執(zhí)行效率,C錯(cuò)。
    (25) 下面對(duì)對(duì)象概念描述錯(cuò)誤的是______。
    A. 任何對(duì)象都必須有繼承性
    B. 對(duì)象是屬性和方法的封裝體
    C. 對(duì)象間的通訊靠消息傳遞
    D. 操作是對(duì)象的動(dòng)態(tài)性屬性
    (25)
    [答案]A
    [考點(diǎn)]程序設(shè)計(jì)基礎(chǔ)
    [評(píng)析]
    此題為基本概念,必記!這里舉幾個(gè)例子說(shuō)明以助大家理解:
    比如
    VB:
    Command按紐類是個(gè)類,在窗體上畫一個(gè)名為Command1的按紐即是創(chuàng)建該類的一個(gè)實(shí)例,也可創(chuàng)建另外一個(gè)實(shí)例如Command2,他們的屬性可以調(diào)置為不同的,但是都是Command類的實(shí)例。Command1,Command2都是對(duì)象,它們封裝了屬性和方法,都是封裝體,比如Name屬性,Caption屬性……宏觀上可說(shuō)Command1的Move操作是動(dòng)態(tài)屬性,對(duì)象間的通讀靠消息傳遞,比如在Command1的單擊事件中寫上:
    Picture1.Print "消息傳遞"
    Picture1是一個(gè)圖片框?qū)ο螅覀冞€可以調(diào)用Form_Load事件等等,都是通過(guò)消息傳遞的,即對(duì)象A向?qū)ο驜發(fā)出消息,對(duì)象B執(zhí)行怎樣的操作。
    C++:
    class Base
    {
    Public:
    Base(){}
    ~Base(){}
    ...
    };
    class Derive:Public Base
    {
    Public:
    ...
    Print()
    {
    Cout<<"打印函數(shù)!"<  }
    };
    void main()
    {
    Derive a;
    Base *p;
    ...
    }
    Base為基類,Derive為基類上的派生類,它繼承了基類的一些屬性和方法等,a為創(chuàng)建的實(shí)例,即是一個(gè)對(duì)象,它封裝了類Derive的所有性性和方法,特別是私有的屬性和方法,直接調(diào)用它們會(huì)失敗,這就是類的封裝性。對(duì)象間的通訊是靠消息傳遞的,比如我們?cè)趦?nèi)存中刪除p所指的一個(gè)對(duì)象,用delete p語(yǔ)句,會(huì)調(diào)用類Base的析構(gòu)函數(shù)~Base();我們也可用a.Print()語(yǔ)句來(lái)調(diào)用Derive類的Print()函數(shù),對(duì)象a具有類Derive的屬性和方法(在C++中一般用函數(shù)來(lái)實(shí)現(xiàn),比如Print(),我們可以說(shuō)這操作是對(duì)象a的動(dòng)態(tài)屬性)
    (26) 下面不屬于軟件工程的3個(gè)要素的是______。
    A. 工具
    B. 過(guò)程
    C. 方法
    D. 環(huán)境
    (26)
    [答案]D
    [考點(diǎn)]軟件工程基礎(chǔ)
    [評(píng)析]
    這里闡述一下,以上答案為原稿的答案,有的書上答案應(yīng)該為B,解釋如下:
    軟件工程包括的三要素是:軟件開發(fā)方法學(xué)、工具和環(huán)境支持,而其主體內(nèi)容是軟件開發(fā)方法學(xué)。
    1、軟件開發(fā)方法,比如根據(jù)瀑布模型有結(jié)構(gòu)化分析與設(shè)計(jì)方法,有原型化開發(fā)方法
    2、軟件開發(fā)工具各個(gè)瀑存模型階段都有相關(guān)工具,比如需求分析階段有DFD數(shù)據(jù)流程圖,詳細(xì)設(shè)計(jì)階段有HIPO圖或PAD圖,編碼工具有VC、VB……
    3、軟件開發(fā)環(huán)境是全面支持軟件開發(fā)全過(guò)程的軟件工具集合。
    如果你有權(quán)威且詳盡的解釋,還請(qǐng)郵給茂葉: dj8529@sina.com 或去我主頁(yè)上留言
    此題的爭(zhēng)論,意義性不大,燃眉之急是應(yīng)負(fù)考試。 :)
    軟件工程三要素工具、方法、過(guò)程,請(qǐng)大家記一下。
    (27) 程序流程圖(PFD)中的箭頭代表的是______。
    A. 數(shù)據(jù)流
    B. 控制流
    C. 調(diào)用關(guān)系
    D. 組成關(guān)系
    (27)
    [答案]B
    [考點(diǎn)]軟件工程基礎(chǔ)
    [評(píng)析]
    如果A,那么B,否則C,這是我們二級(jí)中很熟悉的程序流程方式,我們可以畫成相應(yīng)的PFD圖或N-S圖。易知箭頭控制應(yīng)該是哪條語(yǔ)句執(zhí)行,即B答案。
    (28) 在數(shù)據(jù)管理技術(shù)的發(fā)展過(guò)程中,經(jīng)歷了人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫(kù)系統(tǒng)階段。其中數(shù)據(jù)獨(dú)立性的階段是______。
    A. 數(shù)據(jù)庫(kù)系統(tǒng)
    B. 文件系統(tǒng)
    C. 人工管理
    D. 數(shù)據(jù)項(xiàng)管理
    (28)
    [答案]A
    [考點(diǎn)]數(shù)據(jù)庫(kù)設(shè)計(jì)基礎(chǔ)
    [評(píng)析]
    關(guān)于數(shù)據(jù)管理技術(shù)的三個(gè)階段如下表:
    1.人工管理階段
    人工管理數(shù)據(jù)的特點(diǎn)是:
    (1)數(shù)據(jù)不保存。
    (2)數(shù)據(jù)無(wú)專門軟件進(jìn)行管理。
    (3)數(shù)據(jù)不共享。
    (4)數(shù)據(jù)不具有獨(dú)立性。
    2.文件系統(tǒng)階段
    該階段的數(shù)據(jù)管理具有如下特點(diǎn):
    (1)數(shù)據(jù)可以長(zhǎng)期保存。
    (2)由文件系統(tǒng)管理數(shù)據(jù)。文件系統(tǒng)管理數(shù)據(jù)存在如下缺點(diǎn):
    (1)數(shù)據(jù)共享性差,數(shù)據(jù)冗余度大。
    (2)數(shù)據(jù)獨(dú)立性差。
    3.數(shù)據(jù)庫(kù)系統(tǒng)階段
    與人工管理和文件系統(tǒng)階段相比較,數(shù)據(jù)庫(kù)系統(tǒng)階段具有如下的特點(diǎn):
    (1)數(shù)據(jù)結(jié)構(gòu)化
    (2)數(shù)據(jù)共享性高、冗余度小、易擴(kuò)充
    (3)數(shù)據(jù)獨(dú)立性高
    (4)統(tǒng)一的數(shù)據(jù)管理和控制數(shù)據(jù)庫(kù)管理系統(tǒng)必須提供以下幾個(gè)方面的數(shù)據(jù)控制和保護(hù)功能:
    (1)數(shù)據(jù)的安全性(security)保護(hù)。
    (2)數(shù)據(jù)的完整性(integrity)控制。
    (3)數(shù)據(jù)庫(kù)恢復(fù)(recovery)。
    (4)并發(fā)(concurrency)控制。
    (5)事務(wù)(transaction)支持。
    (29) 用樹形結(jié)構(gòu)來(lái)表示實(shí)體之間聯(lián)系的模型稱為______。
    A. 關(guān)系模型
    B. 層次模型
    C. 網(wǎng)狀模型
    D. 數(shù)據(jù)模型
    (29)
    [答案]B
    [考點(diǎn)]數(shù)據(jù)庫(kù)設(shè)計(jì)基礎(chǔ)
    [評(píng)析]
    層次模型結(jié)構(gòu)是一棵有向樹,樹中的每個(gè)結(jié)點(diǎn)代表一種記錄類型,這些結(jié)點(diǎn)滿足:有且僅有一個(gè)結(jié)點(diǎn)無(wú)雙親(根結(jié)點(diǎn)),其它結(jié)點(diǎn)有且僅有一個(gè)雙親結(jié)點(diǎn)。
    網(wǎng)狀模型則相當(dāng)于一個(gè)有向圖,與層次模型結(jié)構(gòu)不同的是:一個(gè)結(jié)點(diǎn)可以有多個(gè)雙親結(jié)點(diǎn),且多個(gè)結(jié)點(diǎn)可以無(wú)雙親結(jié)點(diǎn)。
    關(guān)系模型則是二維表,一張表即為一個(gè)關(guān)系,這個(gè)很常見,如學(xué)生關(guān)系(學(xué)號(hào),姓名,出生年月,性別),就像我們的辦公軟件中電子表格那樣的表格。
    D項(xiàng)的數(shù)據(jù)模型不是數(shù)據(jù)庫(kù)的基本模型。
    (30) 關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)能實(shí)現(xiàn)的專門關(guān)系運(yùn)算包括______。
    A. 排序、索引、統(tǒng)計(jì)
    B. 選擇、投影、連接
    C. 關(guān)聯(lián)、更新、排序
    D. 顯示、打印、制表
    (30)
    [答案]B
    [考點(diǎn)]數(shù)據(jù)庫(kù)設(shè)計(jì)基礎(chǔ)
    [評(píng)析]
    此題為數(shù)據(jù)庫(kù)的基本概念,如果你完全沒學(xué)過(guò)數(shù)據(jù)庫(kù),可以對(duì)照辦工軟件的電子表格進(jìn)行如下理解:
    選擇:我們根據(jù)某條件選擇出一行或多行元組(一個(gè)元組即為二維表中的一行)
    投影:按字段(也稱屬性,比如學(xué)生關(guān)系(學(xué)號(hào),姓名,出生年月,性別),學(xué)號(hào)、姓名……都是屬性)選取一列或多列(一個(gè)二維表中所有元組在某一列或幾列上截取出來(lái))。
    連接:2個(gè)或2個(gè)以上的表連接組成一張新的表,通常有條件連接。比如學(xué)生關(guān)系(學(xué)號(hào),姓名,系號(hào)),又有一張系表(系號(hào),系名,主任),2張表可以合并為一張這樣的表(學(xué)號(hào),姓名,系號(hào),系名,主任)
    (31) 算法一般都可以用哪幾種控制結(jié)構(gòu)組合而成______。
    A. 循環(huán)、分支、遞歸
    B. 順序、循環(huán)、嵌套
    C. 循環(huán)、遞歸、選擇
    D. 順序、選擇、循環(huán)
    (31)
    [答案]D
    [考點(diǎn)]數(shù)據(jù)結(jié)構(gòu)與算法
    [評(píng)析]
    結(jié)構(gòu)化程序設(shè)計(jì)中,基本的控制結(jié)構(gòu)為順序、選擇、循環(huán)。各種具體的程序設(shè)計(jì)語(yǔ)言中的一些控制結(jié)構(gòu)都可以劃分到這些類中。比如VB里的Select Case語(yǔ)句、If...Elseif...Else...End If,C/C++中的switch()、if{}……都屬于選擇控制結(jié)構(gòu)。相應(yīng)的for循環(huán)和while語(yǔ)句都屬于循環(huán)結(jié)構(gòu)。按從上到下順序執(zhí)行的即是順序控制結(jié)構(gòu)。
    (32) 數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是指______。
    A. 數(shù)據(jù)所占的存儲(chǔ)空間量
    B. 數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)中的表示
    C. 數(shù)據(jù)在計(jì)算機(jī)中的順序存儲(chǔ)方式
    D. 存儲(chǔ)在外存中的數(shù)據(jù)
    (32)
    [答案]B
    [考點(diǎn)]數(shù)據(jù)結(jié)構(gòu)與算法
    [評(píng)析]
    這是個(gè)基本概念題。存儲(chǔ)空間量只是數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)的一個(gè)屬性,答案C也太片面,比如鏈表也是種存儲(chǔ)方式,而非線性的還有樹、圖……我們所學(xué)的數(shù)據(jù)結(jié)構(gòu)不涉及到數(shù)據(jù)在計(jì)算機(jī)外存(比如硬盤、軟盤)具體的方式,而僅關(guān)心它們?cè)趦?nèi)存中邏輯結(jié)構(gòu),比如數(shù)組,它是內(nèi)存中一片連續(xù)的數(shù)據(jù)存儲(chǔ),我們對(duì)每一個(gè)元素都可以順序地訪問,只需要知道某一個(gè)元素的地址,其它數(shù)據(jù)元素的地址可以據(jù)庫(kù)下標(biāo)與數(shù)組類型(如字符型、整型……)所占的存儲(chǔ)空間就可算出每個(gè)元素的地址,故順序訪問所有元素。但是對(duì)于具體數(shù)據(jù)在內(nèi)存中的物理存儲(chǔ),我們很少關(guān)心。比如某個(gè)數(shù)組建立時(shí),它的首地址具體是多少?它們?cè)趦?nèi)存中的二進(jìn)制表示是什么的?
    另,什么叫物理結(jié)構(gòu),什么叫邏輯結(jié)構(gòu),可以這樣來(lái)理解,就好比物理結(jié)構(gòu)是一個(gè)人的肉體,邏輯結(jié)構(gòu)是一個(gè)人的靈魂,類似于計(jì)算機(jī)中硬件與軟件的說(shuō)法。就好比我們上QQ,發(fā)送消息、接收消息,基本上近似大眾人的思維,但發(fā)送消息與接收消息這些的具體技術(shù)過(guò)程或它們?cè)贑PU和硬盤上的活動(dòng),甚至二進(jìn)制是什么呢?去問騰訊公司
    (33) 設(shè)有下列二叉樹:
    對(duì)此二叉樹中序遍歷的結(jié)果為______。
    A. ABCDEF
    B. DBEAFC
    C. ABDECF
    D. DEBFCA
    (33)
    [答案]B
    [考點(diǎn)]數(shù)據(jù)結(jié)構(gòu)與算法
    [評(píng)析]
    該題原稿沒圖,故無(wú)從解釋,此知識(shí)點(diǎn)的詳解部分請(qǐng)看53題
    (34) 在面向?qū)ο蠓椒ㄖ?,一個(gè)對(duì)象請(qǐng)求另一對(duì)象為其服務(wù)的方式是通過(guò)發(fā)送______。
    A. 調(diào)用語(yǔ)句
    B. 命令
    C. 口令
    D. 消息
    (34)
    [答案]D
    [考點(diǎn)]程序設(shè)計(jì)基礎(chǔ)
    [評(píng)析]
    通過(guò)消息機(jī)制。太理論方面的不多說(shuō),現(xiàn)舉例說(shuō)明。
    C++:
    比如在VC++中,單擊了一個(gè)菜單命令項(xiàng)"退出",我們要實(shí)現(xiàn)退出程序,如何來(lái)實(shí)現(xiàn)?很簡(jiǎn)單,只要向窗體發(fā)送一個(gè)PostQuitMessage(0);就可以關(guān)閉窗體。
    這個(gè)在VB中還簡(jiǎn)單,三個(gè)字符"End"即可解決,相當(dāng)于向所有窗體發(fā)送一個(gè)銷毀窗體的消息,即"Unload 窗體名"語(yǔ)句。(如果是單個(gè)窗體的話,即相當(dāng)于Unload Me語(yǔ)句)
    VB:
    Public a As Integer
    Private Sub Command1_Click()
    a = 20
    Print a
    End Sub
    Private Sub Command2_Click()
    Form_Load ’’’’’’’’’’’’’’這里調(diào)用Form_Load()過(guò)程,實(shí)用a=10
    Print a
    End Sub
    Private Sub Form_Load()
    a = 10
    End Sub
    命令按紐Command2向其母窗體發(fā)送一個(gè)消息,使其為Command2服務(wù)。
    Command2是CommandButton類的一個(gè)對(duì)象,主窗體是窗體類的一個(gè)對(duì)象。
    關(guān)于類與對(duì)象的理解,請(qǐng)大家看前面的題的詳解。
    (35) 檢查軟件產(chǎn)品是否符合需求定義的過(guò)程稱為______。
    A. 確認(rèn)測(cè)試
    B. 集成測(cè)試
    C. 驗(yàn)證測(cè)試
    D. 驗(yàn)收測(cè)試
    (35)
    [答案]A
    [考點(diǎn)]軟件工程基礎(chǔ)
    [評(píng)析]
    A、C、D相近,但A為比較正規(guī)的說(shuō)法名詞。
    確認(rèn)測(cè)試也稱合格測(cè)試或驗(yàn)收測(cè)試,主要由用戶參加,檢驗(yàn)軟件規(guī)格說(shuō)明的技術(shù)標(biāo)準(zhǔn)的符合程度,是保證軟件質(zhì)量的最后關(guān)鍵環(huán)節(jié)。
    單元測(cè)試主要采用白盒法,之后再采用集成測(cè)試,主要采用黑盒法。這些主要由開發(fā)者的工作,而無(wú)用戶參與,不是檢查是否符合需求定義的。
    什么叫白盒黑盒?
    相當(dāng)于這樣理解吧:
    白盒測(cè)試,我們要注意到代碼;黑盒,我們只關(guān)心程序運(yùn)行的輸入輸出是否正確,一般是大量的測(cè)試,主要于非增量測(cè)試中使用,而非增量測(cè)試又一般適用于規(guī)模較小的系統(tǒng)開發(fā)??梢韵胂?,一個(gè)很大很復(fù)雜的系統(tǒng),我們用黑盒法來(lái)集成測(cè)試,效果可想而知。
    (36) 下列工具中屬于需求分析常用工具的是______。
    A. PAD
    B. PFD
    C. N-S
    D. DFD
    (36)
    [答案]D
    [考點(diǎn)]軟件工程基礎(chǔ)
    [評(píng)析]
    PAD,問題分析圖,常用于詳細(xì)設(shè)計(jì);
    PFD,程序流程圖,常用于詳細(xì)設(shè)計(jì),我們很多如C、VB…程序設(shè)計(jì)書上都有簡(jiǎn)單的實(shí)例;
    N-S,方框圖,比程序流程圖更靈活,也常用于詳細(xì)設(shè)計(jì);
    DFD,數(shù)據(jù)流圖,遠(yuǎn)離具體在計(jì)算機(jī)上的實(shí)現(xiàn),不懂計(jì)算機(jī)的用戶也能看懂,用于需求分析。
    什么叫詳細(xì)設(shè)計(jì)?它與我們編程有什么區(qū)別?
    這樣理解吧,公司的高級(jí)程序員,就是軟件設(shè)計(jì)師,他們會(huì)搞詳細(xì)設(shè)計(jì)的(在概要設(shè)計(jì)之后),比如用PAD或N-S畫個(gè)圖,它不涉及具體的某種程序設(shè)計(jì)語(yǔ)言的實(shí)現(xiàn),但程序員們都能看懂,程序員再用某種語(yǔ)言(比如C、VB、JAVA…)按照?qǐng)D來(lái)寫代碼。這個(gè)過(guò)程,高級(jí)程序員完成設(shè)計(jì)工作,程序員完成寫代碼工作。
    (37) 下面不屬于軟件設(shè)計(jì)原則的是______。
    A. 抽象
    B. 模塊化
    C. 自底向上
    D. 信息隱蔽
    (37)
    [答案]C
    [考點(diǎn)]軟件工程基礎(chǔ)
    [評(píng)析]
    我們無(wú)論是設(shè)計(jì)與編寫代碼,無(wú)論是畫數(shù)據(jù)流圖還是程序流圖,習(xí)憒性思維都是先有輸入才有輸出,從下至下。自底向上不是軟件設(shè)計(jì)的原則。
    (38) 索引屬于______。
    A. 模式
    B. 內(nèi)模式
    C. 外模式
    D. 概念模式
    (38)
    [答案]B
    [考點(diǎn)]數(shù)據(jù)庫(kù)設(shè)計(jì)基礎(chǔ)
    [評(píng)析]
    要特別記住此題的答案。
    索引的寫入修改了數(shù)據(jù)庫(kù)的物理結(jié)構(gòu),而不是簡(jiǎn)單的邏輯設(shè)計(jì)。內(nèi)模式規(guī)定了數(shù)據(jù)在存儲(chǔ)介質(zhì)上的物理組織方式、記錄錄址方式。
    (39) 在關(guān)系數(shù)據(jù)庫(kù)中,用來(lái)表示實(shí)體之間聯(lián)系的是______。
    A. 樹結(jié)構(gòu)
    B. 網(wǎng)結(jié)構(gòu)
    C. 線性表
    D. 二維表
    (39)
    [答案]D
    [考點(diǎn)]數(shù)據(jù)庫(kù)設(shè)計(jì)基礎(chǔ)
    [評(píng)析]
    關(guān)系數(shù)據(jù)庫(kù)中的關(guān)系,用二維表表示,A為層次數(shù)據(jù)模型的,B為網(wǎng)狀數(shù)據(jù)模型的。
    數(shù)據(jù)庫(kù)模型分為:
    層次模型、網(wǎng)狀模型、關(guān)系模型、面向?qū)ο竽P汀?BR>    (40) 將E-R圖轉(zhuǎn)換到關(guān)系模式時(shí),實(shí)體與聯(lián)系都可以表示成______。
    A. 屬性 B. 關(guān)系
    C. 鍵
    D. 域
    (40)
    [答案]B
    [考點(diǎn)]數(shù)據(jù)庫(kù)設(shè)計(jì)基礎(chǔ)
    [評(píng)析]
    基本概念題,實(shí)體與聯(lián)系可以表示成關(guān)系,關(guān)系可以表示成二維表。