- 相關推薦
2017計算機二級公共基礎知識模擬試題
考生們在備考計算機考試科目時,除了復習教材以外,還要結合試題加深對知識點的理解和鞏固。下面是小編分享的2017計算機二級公共基礎知識模擬試題,歡迎大家練習!
(1) 算法一般都可以用哪幾種控制結構組合而成______。
A. 循環(huán)、分支、遞歸
B. 順序、循環(huán)、嵌套
C. 循環(huán)、遞歸、選擇
D. 順序、選擇、循環(huán)
[答案]D
[考點]數(shù)據(jù)結構與算法
[評析]
結構化程序設計中,基本的控制結構為順序、選擇、循環(huán)。各種具體的程序設計語言中的一些控制結構都可以劃分到這些類中。比如VB里的Select Case語句、If...Elseif...Else...End If,C/C++中的switch()、if{}……都屬于選擇控制結構。相應的for循環(huán)和while語句都屬于循環(huán)結構。按從上到下順序執(zhí)行的即是順序控制結構。
(2) 數(shù)據(jù)的存儲結構是指______。
A. 數(shù)據(jù)所占的存儲空間量
B. 數(shù)據(jù)的邏輯結構在計算機中的表示
C. 數(shù)據(jù)在計算機中的順序存儲方式
D. 存儲在外存中的數(shù)據(jù)
[答案]B
[考點]數(shù)據(jù)結構與算法
[評析]
這是個基本概念題。存儲空間量只是數(shù)據(jù)的存儲結構的一個屬性,答案C也太片面,比如鏈表也是種存儲方式,而非線性的還有樹、圖……我們所學的數(shù)據(jù)結構不涉及到數(shù)據(jù)在計算機外存(比如硬盤、軟盤)具體的方式,而僅關心它們在內(nèi)存中邏輯結構,比如數(shù)組,它是內(nèi)存中一片連續(xù)的數(shù)據(jù)存儲,我們對每一個元素都可以順序地訪問,只需要知道某一個元素的地址,其它數(shù)據(jù)元素的地址可以據(jù)庫下標與數(shù)組類型(如字符型、整型……)所占的存儲空間就可算出每個元素的地址,故順序訪問所有元素。但是對于具體數(shù)據(jù)在內(nèi)存中的物理存儲,我們很少關心。比如某個數(shù)組建立時,它的首地址具體是多少?它們在內(nèi)存中的二進制表示是什么的?
另,什么叫物理結構,什么叫邏輯結構,可以這樣來理解,就好比物理結構是一個人的肉體,邏輯結構是一個人的靈魂,類似于計算機中硬件與軟件的說法。就好比我們上QQ,發(fā)送消息、接收消息,基本上近似大眾人的思維,但發(fā)送消息與接收消息這些的具體技術過程或它們在CPU和硬盤上的活動,甚至二進制是什么呢?去問騰訊公司
(3) 設有下列二叉樹:
對此二叉樹中序遍歷的結果為______。
A. ABCDEF
B. DBEAFC
C. ABDECF
D. DEBFCA
[答案]B
[考點]數(shù)據(jù)結構與算法
[評析]
該題原稿沒圖,故無從解釋,此知識點的詳解部分請看5題
(4) 在面向?qū)ο蠓椒ㄖ,一個對象請求另一對象為其服務的方式是通過發(fā)送______。
A. 調(diào)用語句
B. 命令
C. 口令
D. 消息
[答案]D
[考點]程序設計基礎
[評析]
通過消息機制。太理論方面的不多說,現(xiàn)舉例說明。
C++:
比如在VC++中,單擊了一個菜單命令項"退出",我們要實現(xiàn)退出程序,如何來實現(xiàn)?很簡單,只要向窗體發(fā)送一個PostQuitMessage(0);就可以關閉窗體。
這個在VB中還簡單,三個字符"End"即可解決,相當于向所有窗體發(fā)送一個銷毀窗體的消息,即"Unload 窗體名"語句。(如果是單個窗體的話,即相當于Unload Me語句)
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()過程,實用a=10
Print a
End Sub
Private Sub Form_Load()
a = 10
End Sub
命令按紐Command2向其母窗體發(fā)送一個消息,使其為Command2服務。
Command2是CommandButton類的一個對象,主窗體是窗體類的一個對象。
關于類與對象的理解,請大家看前面的題的詳解。
(5) 檢查軟件產(chǎn)品是否符合需求定義的過程稱為______。
A. 確認測試
B. 集成測試
C. 驗證測試
D. 驗收測試
[答案]A
[考點]軟件工程基礎
[評析]
A、C、D相近,但A為比較正規(guī)的說法名詞。
確認測試也稱合格測試或驗收測試,主要由用戶參加,檢驗軟件規(guī)格說明的技術標準的符合程度,是保證軟件質(zhì)量的最后關鍵環(huán)節(jié)。
單元測試主要采用白盒法,之后再采用集成測試,主要采用黑盒法。這些主要由開發(fā)者的工作,而無用戶參與,不是檢查是否符合需求定義的。
什么叫白盒黑盒?
相當于這樣理解吧:
白盒測試,我們要注意到代碼;黑盒,我們只關心程序運行的輸入輸出是否正確,一般是大量的測試,主要于非增量測試中使用,而非增量測試又一般適用于規(guī)模較小的系統(tǒng)開發(fā)?梢韵胂,一個很大很復雜的系統(tǒng),我們用黑盒法來集成測試,效果可想而知。
(6) 下列工具中屬于需求分析常用工具的是______。
A. PAD
B. PFD
C. N-S
D. DFD
[答案]D
[考點]軟件工程基礎
[評析]
PAD,問題分析圖,常用于詳細設計;
PFD,程序流程圖,常用于詳細設計,我們很多如C、VB…程序設計書上都有簡單的實例;
N-S,方框圖,比程序流程圖更靈活,也常用于詳細設計;
DFD,數(shù)據(jù)流圖,遠離具體在計算機上的實現(xiàn),不懂計算機的用戶也能看懂,用于需求分析。
什么叫詳細設計?它與我們編程有什么區(qū)別?
這樣理解吧,公司的高級程序員,就是軟件設計師,他們會搞詳細設計的(在概要設計之后),比如用PAD或N-S畫個圖,它不涉及具體的某種程序設計語言的實現(xiàn),但程序員們都能看懂,程序員再用某種語言(比如C、VB、JAVA…)按照圖來寫代碼。這個過程,高級程序員完成設計工作,程序員完成寫代碼工作。
(7) 下面不屬于軟件設計原則的是______。
A. 抽象
B. 模塊化
C. 自底向上
D. 信息隱蔽
[答案]C
[考點]軟件工程基礎
[評析]
我們無論是設計與編寫代碼,無論是畫數(shù)據(jù)流圖還是程序流圖,習憒性思維都是先有輸入才有輸出,從下至下。自底向上不是軟件設計的原則。
(8) 索引屬于______。
A. 模式
B. 內(nèi)模式
C. 外模式
D. 概念模式
[答案]B
[考點]數(shù)據(jù)庫設計基礎
[評析]
要特別記住此題的答案。
索引的寫入修改了數(shù)據(jù)庫的物理結構,而不是簡單的邏輯設計。內(nèi)模式規(guī)定了數(shù)據(jù)在存儲介質(zhì)上的物理組織方式、記錄錄址方式。
(9) 在關系數(shù)據(jù)庫中,用來表示實體之間聯(lián)系的是______。
A. 樹結構
B. 網(wǎng)結構
C. 線性表
D. 二維表
[答案]D
[考點]數(shù)據(jù)庫設計基礎
[評析]
關系數(shù)據(jù)庫中的關系,用二維表表示,A為層次數(shù)據(jù)模型的,B為網(wǎng)狀數(shù)據(jù)模型的。
數(shù)據(jù)庫模型分為:
層次模型、網(wǎng)狀模型、關系模型、面向?qū)ο竽P汀?/p>
(10) 將E-R圖轉(zhuǎn)換到關系模式時,實體與聯(lián)系都可以表示成______。
A. 屬性
B. 關系
C. 鍵
D. 域
[答案]B
[考點]數(shù)據(jù)庫設計基礎
[評析]
基本概念題,實體與聯(lián)系可以表示成關系,關系可以表示成二維表。 (11) 在下列選項中,哪個不是一個算法一般應該具有的基本特征______。
A. 確定性
B. 可行性
C. 無窮性
D. 擁有足夠的情報
[答案]C
[考點]程序設計基礎
[評析]
算法具有確定性、可行性,并擁有足夠的情報。
(12) 希爾排序法屬于哪一種類型的排序法______。
A. 交換類排序法
B. 插入類排序法
C. 選擇類排序法
D. 建堆排序法
[答案]B
[考點]數(shù)據(jù)結構與算法
[評析]
Shell排序法 輸入:數(shù)組名稱(也就是數(shù)組首地址)、數(shù)組中元素個數(shù)
思想為:在直接插入排序算法中,每次插入一個數(shù),使有序序列只增加1個節(jié)點,
并且對插入下一個數(shù)沒有提供任何幫助。如果比較相隔較遠距離(稱為
增量)的數(shù),使得數(shù)移動時能跨過多個元素,則進行一次比較就可能消除
多個元素交換。D.L.shell于1959年在以他名字命名的排序算法中實現(xiàn)
了這一思想。算法先將要排序的一組數(shù)按某個增量d分成若干組,每組中
記錄的下標相差d.對每組中全部元素進行排序,然后再用一個較小的增量
對它進行,在每組中再進行排序。當增量減到1時,整個要排序的數(shù)被分成
一組,排序完成。
下面的函數(shù)是一個希爾排序算法的一個實現(xiàn),初次取序列的一半為增量,
以后每次減半,直到增量為1。以C語言為例。
void shell_sort(int *x, int n)
{
int h, j, k, t;
for (h=n/2; h>0; h=h/2) /*控制增量*/
{
for (j=h; j {
t = *(x+j);
for (k=j-h; (k>=0 && t<*(x+k)); k-=h)
{
*(x+k+h) = *(x+k);
}
*(x+k+h) = t;
}
}
}
故屬于插入類排序法。
(13) 下列關于隊列的敘述中正確的是______。
A. 在隊列中只能插入數(shù)據(jù)
B. 在隊列中只能刪除數(shù)據(jù)
C. 隊列是先進先出的線性表
D. 隊列是先進后出的線性表
[答案]C
[考點]數(shù)據(jù)構與算法
[評析]
隊列是先進先出的,棧是先進后出的,2者的區(qū)別一定要搞清楚。
(14) 對長度為N的線性表進行順序查找,在最壞情況下所需要的比較次數(shù)為______。
A. N+1
B. N
C. (N+1)/2
D. N/2
[答案]B
[考點]數(shù)據(jù)結構與算法
[評析]
很簡單,我們的二級程序設計語言書中都有此算法,另外還要掌握二分法查找,這也是我們二級中常考的。
那么二分法最壞的情況為多少次呢?
>log2 n的最小整數(shù)值。
比如n為1,最壞的情況要比較次;
n為18,最壞的情況要比較5次。
二分法適用于已排序的順序表(我們二級語言中都是數(shù)組),考二級書里的,這里不再羅嗦。
(15) 信息隱蔽的概念與下述哪一種概念直接相關______。
A. 軟件結構定義
B. 模塊獨立性
C. 模塊類型劃分
D. 模擬耦合度
[答案]B
[考點]軟件工程基礎
[評析]
模塊獨立性越強,則信息隱蔽性越好。
舉個例,
VB:
在多重窗體設計時,每個窗體里的變量盡量與其它窗體里變量無關,比如少用Public聲明的變量,即全局變量,當多個窗體共享全局變量越多時,窗體的獨立性就越差。
C:
頭文件里的一些函數(shù),一般不用到全局變量,否則在主程序里出亂子的情況很多,我們在模塊化開發(fā)時,盡量使每個模塊獨立,強功能內(nèi)聚,分工明確,調(diào)試程序也要方便得多。
C++:
考此項的朋友估計不用我多講,類的封裝性就是一個很好的說明。
(16) 面向?qū)ο蟮脑O計方法與傳統(tǒng)的的面向過程的方法有本質(zhì)不同,它的基本原理是______。
A. 模擬現(xiàn)實世界中不同事物之間的聯(lián)系
B. 強調(diào)模擬現(xiàn)實世界中的算法而不強調(diào)概念
C. 使用現(xiàn)實世界的概念抽象地思考問題從而自然地解決問題
D. 鼓勵開發(fā)者在軟件開發(fā)的絕大部分中都用實際領域的概念去思考
[答案]C
[考點]軟件工程基礎
[評析]
我們舉個例,
從各種語言的結構體類型出發(fā),我們知道,結構體中可以定義很多變量,對每個變量執(zhí)行相同的操作,挨個挨個寫出,很麻煩。假設該結構體有如下變量:
草魚、田魚、鯽魚……
它們都在一口池塘里,現(xiàn)在執(zhí)行:它們都上來
傳統(tǒng)的程序設計是:
草魚上來
田魚上來
鯽魚上來
……
一條一條都寫出,是不是很麻煩?
改進一下,我們用個循環(huán):
n等于從1到10(假設共有10種魚)
第n種魚上來
還是很麻煩,現(xiàn)實中我們很易想到用"面向?qū)ο蟮乃枷?quot;,池塘里所有的魚都是一個結構體變量,名為魚,執(zhí)行:
魚上來
意思即所有的魚都上來。
現(xiàn)特定于面象對象語言中的類,魚,就可以看作為一類。
這就屬于 C 項:
使用現(xiàn)實世界的概念抽象地思考問題從而自然地解決問題
這樣羅嗦的解釋望大家別暈,旨在幫助部分人的確難想通的,為應試,你能背下答案也行。
(17) 在結構化方法中,軟件功能分解屬于下列軟件開發(fā)中的階段是______。
A. 詳細設計
B. 需求分析
C. 總體設計
D. 編程調(diào)試
[答案]C
[考點]軟件工程基礎
[評析]
從先到后一排,是:
需求分析、總體設計、詳細設計、編程調(diào)試
需求分析遠離在計算機上的實現(xiàn),談不上功能的分解;
有了需求分析的報告,軟件設計員可以思考我要讓軟件怎么做,開始總體設計,其間將軟件的功能分解,確定模塊之間的接口;
有了每個模塊功能的分解,再對每個模塊進入詳細設計階段;
接下來再是程序員的任務,編寫代碼,開始編程調(diào)試。
(18) 軟件調(diào)試的目的是______。
A. 發(fā)現(xiàn)錯誤
B. 改正錯誤
C. 改善軟件的性能
D. 挖掘軟件的潛能
[答案]B
[考點]軟件工程基礎
[評析]
一個程序調(diào)試是為了干什么?
還不是為了改正錯誤?
發(fā)現(xiàn)錯誤?這只是一個過程,改正錯誤之前必須先發(fā)現(xiàn)錯誤,總不能目的就僅為發(fā)現(xiàn)錯誤吧。
(19) 按條件f對關系R進行選擇,其關系代數(shù)表達式為______。
A. R|X|R
B. R|X|R
C. бf(R)
D. ∏f(R)
[答案]C
[考點]數(shù)據(jù)庫設計基礎
[評析]
C是選擇一行,D是投影一列,二者要區(qū)分開。
如果不僅談此題的話,有關關系代數(shù),內(nèi)容有些多,這里不是一兩句能說清,可以看看相關《數(shù)據(jù)庫》的資料中的關系代數(shù),里面寫得很詳細。為應試,情急之下能記住幾個題答案就行。
(20) 數(shù)據(jù)庫概念設計的過程中,視圖設計一般有三種設計次序,以下各項中不對的是______。
A. 自頂向下
B. 由底向上
C. 由內(nèi)向外
D. 由整體到局部
[答案]D
[考點]數(shù)據(jù)庫設計基礎
[評析]
通常有如下幾種方法:
1、自頂向下。先全局框架,然后逐步細化
2、自底向上。先局部概念結構,再集成為全局結構 、由里向外。先核心結構,再向外擴張
1、混合策略。1與2相結合,先自頂向下設計一個概念結構的框架,再自底向上為框架設計局部概念結構
【計算機二級公共基礎知識模擬試題】相關文章:
2016計算機二級JAVA全真模擬試題08-06
計算機公共基礎知識09-03
最新公共英語考前模擬試題精選08-12
計算機基礎知識筆試題09-26
2017計算機統(tǒng)考模擬試題08-10