软件设计师习题笔记-重点习题一
1.對(duì)有n個(gè)結(jié)點(diǎn)、e條邊且采用數(shù)組表示法(即鄰接矩陣存儲(chǔ))的無(wú)向圖進(jìn)行深度優(yōu)先遍歷,時(shí)間復(fù)雜度為(O(n^2))。
解析:鄰接矩陣有n*n個(gè)點(diǎn),算法需要遍歷鄰接矩陣的每一個(gè)點(diǎn)所以時(shí)間復(fù)雜度是O(n*n)
2.浮點(diǎn)數(shù)的表示分為階和尾數(shù)兩部分。兩個(gè)浮點(diǎn)數(shù)相加時(shí),需要先對(duì)階,即(將小階向大階對(duì)齊,同時(shí)將尾數(shù)右移n位?)(n為階差的絕對(duì)值)。
解析:對(duì)階時(shí),小數(shù)向大數(shù)看齊;對(duì)階是通過(guò)較小數(shù)的尾數(shù)右移實(shí)現(xiàn)的。
3.流水線的吞吐率是指單位時(shí)間流水線處理的任務(wù)數(shù),如果各段流水的操作時(shí)間不同,則流水線的吞吐率是(最長(zhǎng)流水段操作時(shí)間)的倒數(shù)。
解析:流水線的吞吐率是指單位時(shí)間流水線處理機(jī)輸出的結(jié)果的數(shù)目,因此流水線的吞吐率為一個(gè)流水級(jí)時(shí)間的倒數(shù),即最長(zhǎng)流水級(jí)時(shí)間的倒數(shù)。
4.數(shù)據(jù)字典是結(jié)構(gòu)化分析的一個(gè)重要輸出。數(shù)據(jù)字典的條目不包括(外部實(shí)體)。
解析:數(shù)據(jù)字典是指對(duì)數(shù)據(jù)的數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)、處理邏輯、外部實(shí)體等進(jìn)行定義和描述,其目的是對(duì)數(shù)據(jù)流程圖中的各個(gè)元素做出詳細(xì)的說(shuō)明,使用數(shù)據(jù)字典為簡(jiǎn)單的建模項(xiàng)目。其條目有數(shù)據(jù)流、數(shù)據(jù)項(xiàng)、數(shù)據(jù)存儲(chǔ)、基本加工等。
5.某商店業(yè)務(wù)處理系統(tǒng)中,基本加工“檢查訂貨單”的描述為:若訂貨單金額大于5000元,且欠款時(shí)間超過(guò)60天,則不予批準(zhǔn);若訂貨單金額大于5000元,且欠款時(shí)間不超過(guò)60天,則發(fā)出批準(zhǔn)書(shū)和發(fā)貨單;若訂貨單金額小于或等于500元,則發(fā)出批準(zhǔn)書(shū)和發(fā)貨單,若欠款時(shí)間超過(guò)60天,則還要發(fā)催款通知書(shū)。現(xiàn)采用決策表表示該基本加工,則條件取值的組合數(shù)最少是(3)。
解析:
根據(jù)題意可得出如下決策表:
| 條件項(xiàng) | 條件值 | |||
| 1 | 2 | 3 | 4 | |
| >5000元 | Y | Y | N | N |
| >60 天 | Y | N | Y | N |
| 批準(zhǔn)書(shū) | N | Y | Y | Y |
| 發(fā)貨單 | N | Y | Y | Y |
| 催款通知書(shū) | N | N | Y | N |
其中第2條和第4條可進(jìn)行合并,故該條件取值的組合數(shù)為3。
6.工作量估算模型 COCOMO II的層次結(jié)構(gòu)中,估算選擇不包括(用例數(shù))。
解析:COCOMOII模型也需要使用規(guī)模估算信息,在模型層次結(jié)構(gòu)中有3種不同規(guī)模估算選擇,即:對(duì)象點(diǎn)、功能點(diǎn)和代碼行。
7.(Lisp)是一種函數(shù)式編程語(yǔ)言。
解析:LISP是一種通用高級(jí)計(jì)算機(jī)程序語(yǔ)言,長(zhǎng)期以來(lái)壟斷人工智能領(lǐng)域的應(yīng)用。LISP作為因應(yīng)人工智能而設(shè)計(jì)的語(yǔ)言,是第一個(gè)聲明式系內(nèi)函數(shù)式程序設(shè)計(jì)語(yǔ)言,有別于命令式系內(nèi)過(guò)程式的C、Fortran和面向?qū)ο蟮腏ava、C#等結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言。
8.假設(shè)鐵路自動(dòng)售票系統(tǒng)有n個(gè)售票終端,該系統(tǒng)為每個(gè)售票終端創(chuàng)建一個(gè)進(jìn)程Pi(i=1,2,…,n)管理車票銷售過(guò)程。假設(shè)Tj(j=1,2,…,m)單元存放某日某趟車的車票剩余票數(shù),Temp為Pi進(jìn)程的臨時(shí)工作單元,x為某用戶的購(gòu)票張數(shù)。Pi進(jìn)程的工作流程如下圖所示,用P操作和Ⅴ操作實(shí)現(xiàn)進(jìn)程間的同步與互斥。初始化時(shí)系統(tǒng)應(yīng)將信號(hào)量S賦值為(1)。圖中(a)、(b)和(c)處應(yīng)分別填入(P(S)、V(S)和V(S))。
解析:S的賦值為1的原因:信號(hào)量S應(yīng)當(dāng)是該單元數(shù),對(duì)某日某趟車為一個(gè)單元的話,單元數(shù)只能為1。第二空為(a)應(yīng)為申請(qǐng)資源,(b)(c)應(yīng)當(dāng)為釋放資源,故是一個(gè)P,兩個(gè)V操作。
9.I/O設(shè)備管理軟件一般分為4個(gè)層次,如下圖所示。圖中①②③分別對(duì)應(yīng)(與設(shè)備無(wú)關(guān)的系統(tǒng)軟件、設(shè)備驅(qū)動(dòng)程序、中斷處理程序)。
?
解析:具體層次從上往下分別為用戶級(jí)I/O層、設(shè)備無(wú)關(guān)I/O層、設(shè)備驅(qū)動(dòng)程序、中斷處理程序、硬件。
硬件:完成具體的I/O操作。
中斷處理程序:I/O完成后喚醒設(shè)備驅(qū)動(dòng)程序。
設(shè)備驅(qū)動(dòng)程序:設(shè)置寄存器,檢查設(shè)備狀態(tài)。
設(shè)備無(wú)關(guān)I/O層:設(shè)備名解析、阻塞進(jìn)程、分配緩沖區(qū)。
用戶級(jí)I/O層:發(fā)出I/O調(diào)用。
10.軟件維護(hù)工具不包括(配置管理)工具。
解析:輔助軟件維護(hù)過(guò)程中的活動(dòng)的軟件稱為“軟件維護(hù)工具”,它輔助維護(hù)人員對(duì)軟件代碼及其文檔進(jìn)行各種維護(hù)活動(dòng)。軟件維護(hù)工具主要有:1、版本控制工具;2、文檔分析工具;3、開(kāi)發(fā)信息庫(kù)工具;4、逆向工程工具;5、再工程工具;6、配置管理支持工具。
11.對(duì)下圖所示的程序流程圖進(jìn)行判定覆蓋測(cè)試,則至少需要(2)個(gè)測(cè)試用例。采用 McCabe度量法計(jì)算其環(huán)路復(fù)雜度為(3)。
?
解析:
1.判定覆蓋是設(shè)計(jì)足夠多的測(cè)試用例,使得程序中的每一個(gè)判斷至少獲得一次“真”和一次“假”,即使得程序流程圖中的每一個(gè)真假分支至少被執(zhí)行一次。根據(jù)題意,只需2個(gè)測(cè)試用例即可。
2.根據(jù)環(huán)路復(fù)雜度的計(jì)算公式V(G)=m-n+2=11-10+2=3。(箭頭為m,控件為n)
12.軟件調(diào)試的任務(wù)就是根據(jù)測(cè)試時(shí)所發(fā)現(xiàn)的錯(cuò)誤,找出原因和具體的位置,進(jìn)行改正。其常用的方法中,(歸納法)是指從測(cè)試所暴露的問(wèn)題出發(fā),收集所有正確或不正確的數(shù)據(jù),分析它們之間的關(guān)系,提出假想的錯(cuò)誤原因,用這些數(shù)據(jù)來(lái)證明或反駁,從而查出錯(cuò)誤所在。
解析:所謂演繹推理,就是從一般性的前提出發(fā),通過(guò)推導(dǎo)即“演繹”,得出具體陳述或個(gè)別結(jié)論的過(guò)程。歸納法以一系列經(jīng)驗(yàn)事物或知識(shí)素材為依據(jù),尋找出其服從的基本規(guī)律或共同規(guī)律,并假設(shè)同類事物中的其他事物也服從這些規(guī)律,從而將這些規(guī)律作為預(yù)測(cè)同類事物的其他事物的基本原理的一種認(rèn)知方法。
13.在下列機(jī)制中,(動(dòng)態(tài)綁定)是指過(guò)程調(diào)用和響應(yīng)調(diào)用所需執(zhí)行的代碼在運(yùn)行時(shí)加以結(jié)合;而(靜態(tài)綁定)是過(guò)程調(diào)用和響應(yīng)調(diào)用所需執(zhí)行的代碼在編譯時(shí)加以結(jié)合。
解析:程序運(yùn)行過(guò)程中,把函數(shù)(或過(guò)程)調(diào)用與響應(yīng)調(diào)用所需要的代碼相結(jié)合的過(guò)程稱為動(dòng)態(tài)綁定。靜態(tài)綁定是指在程序編譯過(guò)程中,把函數(shù)(方法或者過(guò)程)調(diào)用與響應(yīng)調(diào)用所需的代碼結(jié)合的過(guò)程稱之為靜態(tài)綁定。
14.語(yǔ)法制導(dǎo)翻譯是一種(靜態(tài)語(yǔ)義分析)方法。
解析:翻譯的任務(wù):首先是語(yǔ)義分析和正確性檢查,若正確,則翻譯成中間代碼或目標(biāo)代碼。其基本思想是,根據(jù)翻譯的需要設(shè)置文法符號(hào)的屬性,以描述語(yǔ)法結(jié)構(gòu)的語(yǔ)義。例如,一個(gè)變量的屬性有類型,層次,存儲(chǔ)地址等。表達(dá)式的屬性有類型,值等。屬性值的計(jì)算和產(chǎn)生式相聯(lián)系。隨著語(yǔ)法分析的進(jìn)行,執(zhí)行屬性值的計(jì)算,完成語(yǔ)義分析和翻譯的任務(wù)。
總結(jié)
以上是生活随笔為你收集整理的软件设计师习题笔记-重点习题一的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Qt工作笔记-QMap查找时要注意的问题
- 下一篇: Qt工作笔记-Qt文档阅读笔记-setM