第 1 頁:試題 |
第 2 頁:參考答案 |
1.B。【解析】棧是限定只在表尾進行插入或刪除操作
的線性表,因此棧是先進后出的線性表;隊列是一種特殊的線性表,它只允許在表的前端(front)進行刪除操作,而在表的后端(rear)進行插入操作,隊列具有先進先出(F1FO)的特點;雙向鏈表可以在鏈表的頭和尾進行添加刪除操作;二叉樹是非線性結構。
2.C。【解析】軟件測試是保證軟件質量的關鍵環節,直接影響著軟件的質量評估。軟件測試不僅要講究策略,而且要講究時效性。軟件測試的目的是盡可能多地發現程序中的錯誤。
3.C。【解析】模塊的獨立程序是評價設計好壞的重要度量標準。衡量軟件的模塊獨立性使用耦合性和內聚性兩個定性的度量標準。
4.A。【解析】數據庫系統會減少數據冗余,但不可能避免一切冗余。
5.D。【解析】二叉樹的遍歷有3種:前序、中序和后序。后序遍歷首先遍歷左子樹或左子結點,然后遍歷右子樹或右子結點,最后訪問根結點。分析本題二叉樹,對其進行后序遍歷的結果為DEBFCA。
6.B。【解析】同一概念在一處為實體,而在另一處為屬性或聯系的沖突稱為概念沖突。
7.C。【解析】面向對象設計通過對人類認識客觀世界及事物發展過程的抽象,建立了規范化的分析設計方法,由此帶來軟件模塊化特色突出、可讀性好、易維護等一系列優點。
8.C。【解析】數據庫系統(DBS)是指在計算機系統中引入數據庫后的系統,一般有數據庫(DB)、數據庫管理系統(DBMS)、應用系統、數據庫管理員和用戶構成。
9.B。【解析】建立索引是加快查詢速度的有效手段,這與索引按什么方式組織有關,它建立在數據庫表的基礎上,屬于內模式。
10.C。【解析】在關系模型的數據語言中,一般除了運用常規的集合運算(并、交、差、笛卡兒積等)外,還定義了一些專門的關系運算,如投影、選擇、連接等。前者是將關系(即二維表)看成是元組的集合.這些運算主要是從二維表的行的方向來進行的;后者主要是從二維表的列的方向來進行運算。因此,選項A與選頃B的說法都是錯誤的,而選項C的說法正確。
11.B。【解析】函數調用時用實參替換形參,如果實參為表達式,將為表達武的值創建一個臨時對象,然后將該實參替換形參。替換的實質是變量間的復制,當然這種復制需要為形參分配內存。需要注意的是:形參在編澤時不分配內存,在運行時才分配內存。
12.A。【解析】本題考查的是內聯函數的相關知識點。C++引入內聯函數是用它來代替C語言中的預處理宏函數,內聯函數在調用時,是將表達式用內聯函數體來替換,這樣會加快程序的執行速度。
13.C。【解析】每個C++程序中都要有且僅有一個主函數,該函數是程序的入口,而語句、預處理命令和函數及類在程序中都可以有多個。
14.D。【解析】對指針所指向的地址取值時,采用的存取運算符為*。B為取地址符。
15.A。【解析】當自加運算符做后綴表達式的時候,表達式的值不變,只有變量的值增1,所以表達式(x++*2/3)相當于(11*2/3)取整后為7。
16.A。【解析】引用比較特殊,即必須指向一個已有的同類型變量。引用是已有變量的別名,故選項C是錯誤的,選項D中變量類型不同,而選項B中是常數。
17.C。【解析】本題考查的是C++標準庫iostream提供的基本I/O類。istream提供了向流中插入數據的有關操作;0stream提供了從流中提取數據的有關操作。
18.B。【解析】在定義了重載運算符后的函數后,函數operator+重載了運算符“+”。如果在類以外的其他地方定義了一個函數,在類體中用friend對該函數進行聲明,此函數就稱為本類的友元函數。“*”用友元函數重載就是運算符函數不作為成員函數,而把它放在類外,“*”被改寫為“operator*”。“+”為成員函數重載,X.operator+。所以“x+y*z”被改寫為“x.operator+(operator*(y,z))”。
19.A。【解析】本題的函數是根據a和b的值來給c賦值。
20.A。【解析】本題考查邏輯運算符!邏輯“非”,&&邏輯“與”,‖邏輯“或”,三者的優先級順序為!)&&>‖,本題中d=!4&&!5‖!0,即d=0‖1,也即d=1。
微信搜索"考試吧"了解更多考試資訊、下載備考資料
相關推薦: