【正文】
第三章習題 一、選擇題 1. 軟件需求分析階段的工作,可以分為以下 4 個方面:對問題的識別、分析與綜合、編寫需求分析文檔以及 ( )。 供選擇的答案: A. 總結(jié) B. 階段性報告 C. 需求分析評審 D. 以上答案都不正確 2. 各種需求方法都有它們共同適用的 ( )。 供選擇的答案: A .說明方法 B .描述方式 C. 準則 D.基本原則 3. 軟件需求分析的任務不應包括 ( A )。進行需求分析可使用多種工具, 但( B )是不適用的。在需求分析中,分析員要從用戶那里解決的最重要的問題是( C )。需求規(guī)格說明書的內(nèi)容不應當包括 ( D )。該文檔在軟件開發(fā)中具有重要的作用,但其作用不應當包括 ( E )。 供選擇的答案: A. ① 問題分析 ② 信息域分析 ③ 結(jié)構(gòu)化程序設計 ④ 確定邏輯模型 B. ① 數(shù)據(jù)流圖 ② 判定表 ③ PAD 圖 ④ 數(shù)據(jù)詞典 C. ① 要讓軟件做什么 ② 要給該軟件提供哪些信息 ③ 要求軟件工作 效率如何 ④ 要讓軟件具有什么樣的結(jié)構(gòu) D. ① 對重要功能的描述 ② 對算法的詳細過程性描述 ③ 軟件確認準則 ④ 軟件的性能 E. ① 軟件設計的依據(jù) ② 用戶和開發(fā)人員對軟件要“做什么”的共同理解 ③ 軟件驗收的依據(jù) ④ 軟件可行性分析的依據(jù) 4. 原型化方法是用戶和軟件開發(fā)人員之間進行的一種交互過程,適用于 ( A )系統(tǒng)。它從用戶界面的開發(fā)入手,首先形成 ( B ),用戶 ( C ),并就 ( D )提出意見,它是一種 ( E )型的 設計過程。 供選擇的答案: A. ① 需求不確定性高的 ② 需求確定的 ③ 管理信息 ④ 決策支持 B. ① 用戶界面使用手冊 ② 用戶界面需求分析說明書 ③ 系統(tǒng)界面原型 ④ 完善的用戶界面 C. ① 改進用戶界面的設計 ② 閱讀文檔資料 ③ 模擬用戶界面的運行 ④ 運行用戶界面原型 D.① 同意什么和不同意什么 ② 使用和不使用哪一種編程語言 ③ 程序的結(jié)構(gòu) ④ 執(zhí)行速度是否滿足要求 E.① 自外向內(nèi) ② 自頂向下 ③ 自內(nèi)向外 ④ 自底向上 二、簡答題 1. 用逐步求精方法解決下述的更新順序主文件的問題。 美國某雜志社需要一個軟件,以更新存有該雜志訂戶姓名、地址等數(shù)據(jù)的順序主文件。 共有插入、修改和刪除等 3種類型的事務,分別對應于事務代碼 2和 3。也就是說,事務類型如下: 類型 1: INSERT(插入一個新訂戶到主文件中) 類型 2: MODIFY(修改一個已有的訂戶記錄) 類型 3: DELETE(刪除一個已有的訂戶記錄) 事務是按訂戶名字的字母順序排序的。如果對一個訂戶既有修改事務又 有刪除事務,則已對那個訂戶的事務排好次序了,以便使修改發(fā)生在刪除之前。 2. 分析圖 ,確定每個模塊的內(nèi)聚類型。 圖 計算多地點日平均溫度的程序 3. 分析圖 ,確定模塊之間的耦合類型。 圖 一個程序的模塊互連圖 在圖 ,表 。 表 模塊接口描述 4. 用面向數(shù)據(jù)流方法設計本書第 2章第 11 題所述的工資支付系統(tǒng)的軟件結(jié)構(gòu)。 5. 用 3種方法計算圖 。 圖 一個程 序的流圖 6. 下面列出的代碼用重復執(zhí)行的加法來計算兩個正整數(shù) X和 Y 的乘積,請用 Halstead方法預測程序的長度,并把預測出的長度與實際長度相比較。 Z=0。 While X0 Z=Z+Y。 X=X1。 End_while。 Print(Z)。 7. 圖 ,請把它改畫為等價的盒圖。 圖 程序流程圖 8. 某交易所規(guī)定給經(jīng)紀人的手續(xù)費計算方法如下:總手續(xù)費等于基本手續(xù)費加上與交易中的每股價格和股數(shù)有關(guān)的附加手續(xù)費。如果交易總金額少于 1000 元,則基本手續(xù)費為交 易金額的 %;如果交易總金額在 1000元到 10000元之間,則基本手續(xù)費為交易金額的5%,再加 34元;如果交易總金額超過 10000元,則基本手續(xù)費為交易金額的 4%加上 134元。當每股售價低于 14 元時,附加手續(xù)費為基本手續(xù)費的 5%,除非買進、賣出的股數(shù)不是 100的倍數(shù),在這種情況下附加手續(xù)費為基本手續(xù)費的 9%。當每股售價在 14元到 25元之間時,附加手續(xù)費為基本手續(xù)費的 2%,除非交易的股數(shù)不是 100 的倍數(shù),在這種情況下附加手續(xù)費為基本手續(xù)費的 6%。當每股售價超過 25元時,如果交易的股數(shù)零散(即,不是 100的 倍數(shù)),則附加手續(xù)費為基本手續(xù)費的 4%,否則附加手續(xù)費為基本手續(xù)費的 1%。 要求: (1)用判定表表示手續(xù)費的計算方法; (2)用判定樹表示手續(xù)費的計算方法; 9. 畫出下列偽碼程序的程序流程圖和盒圖。 START IF P THEN WHILE q DO F END DO ELSE BLOCK g n END BLOCK END IF STOP 圖 一個非結(jié)構(gòu)化程序 10. 圖 ,請問: (1)為什么說它是非結(jié)構(gòu)化的? (2)設計一個與它等價的結(jié)構(gòu)化程 序。 (3)在 (2)題的設計中你使用附加的標志變量 flag 了嗎?若沒用,請再設計一個使用flag的程序;若用了,請再設計一個不用 flag的程序。 11. 研究下面給出的偽碼程序,要求: (1)畫出它的程序流程圖; (2)它是結(jié)構(gòu)化的還是非結(jié)構(gòu)化的?說明你的理由; (3)若是非結(jié)構(gòu)化的,則 (a)把它改造成僅用三種控制結(jié)構(gòu)的結(jié)構(gòu)化程序; (b)寫出這個結(jié)構(gòu)化設計的偽碼; (c)用盒圖表示這個結(jié)構(gòu)化程序。 (4)找出并改正程序邏輯中的錯誤。 COMMENT:PROGRAM SEARCHES FOR FIRST N REFERENCES TO A TOPIC IN AN INFORMATION RETRIEVAL SYSTEM WITH T TOTAL ENTRIES INTPUT N I=O MATCH=0 DO WHILE I≤ T I=I+1 IF WORD=KEYWORD THEN MATCH=MATCH+1 STORE IN BUFFER END IF MATCH=N THEN GOTO OUTPUT END END IF N=0 THEN PRINT “ NO MATCH” OUTPUT:ELSE