freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

軟件工程教案-4計算機0301-0304(參考版)

2025-05-18 23:51本頁面
  

【正文】 ? 缺點:所計算得到的度量值同程序的控制流沒什么關(guān)系,從而不能用來測量控制流的復(fù)雜性。 x[j]=temp。 temp=x[I]。jI。In。 if (n1)return。但對非執(zhí)行語句(如注釋)則不進行考慮。 b c d e f g h i j k 入口點 出口點 a McCabe方法( 4) ? 2)計算強連通的有向圖中線性無關(guān)環(huán)的個數(shù) – 公式如下: – V( G) =mn+p – m:有向圖 G中的弧數(shù); – n:有向圖 G中的節(jié)點數(shù); – p:是有向圖中分離部分的數(shù)目; b c d e f g h i j k a 圖中: V( G) =1311+1=3 Halstead方法( 1) ? 霍爾斯特德根據(jù)源程序中運算符和操作數(shù)的總數(shù)來度量程序的復(fù)雜程度。 amp。原來連接不同處理符號的箭頭變成連接不同點的有向弧。 。 Jackson程序設(shè)計方法( 8) ? 把操作和條件分配到程序結(jié)構(gòu)圖的適當位置 產(chǎn)生新文件 處理考生記錄 * 分析考生記錄 產(chǎn)生準考證號 產(chǎn)生姓名 產(chǎn)生通訊地址 產(chǎn)生考分 I ( 1) 3 2 4 7 1 6 5 4 Jackson程序設(shè)計方法( 9) ? 第五步 用偽碼表示程序 A seq B C D A end A B C D 順序結(jié)構(gòu) Jackson程序設(shè)計方法( 10) A select condition1 B A or condition2 C A or condition3 D A end A B C D 選擇結(jié)構(gòu) 。 – ( 7)關(guān)閉全部文件。 – ( 5)生成一條新記錄。 – 操作:( 1)停止; – ( 2)打開兩個輸入文件; – ( 3)建立輸出文件。 – 對于輸入數(shù)據(jù)結(jié)構(gòu)中剩余的數(shù)據(jù)單元,根據(jù)它們所處的層次,在程序結(jié)構(gòu)圖的相應(yīng)層次為每個數(shù)據(jù)單元畫上相應(yīng)的處理框; – 對于輸出數(shù)據(jù)結(jié)構(gòu)中剩余的數(shù)據(jù)單元,根據(jù)它們所處的層次,在程序結(jié)構(gòu)圖的相應(yīng)層次為每個數(shù)據(jù)單元畫上相應(yīng)的處理框。合并后的考生新文件自然也是由考生記錄組成,內(nèi)容包括:準考證號、姓名、通訊地址和各門考分。為簡便起見,考生基本情況文件中的考生記錄的內(nèi)容包括:準考證號、姓名、通訊地址。 ? [例 2 ]高考后將考生的基本情況文件(簡稱考生基本情況文件)和考生高考成績文件(簡稱考分文件)合并成一個新文件(簡稱考生新文件)。這樣就影響了圖形的表達能力,也不利于直接把圖翻譯成程序。 Jackson圖 (2) ? Jackson圖的優(yōu)點: – ( 1) Jackson圖不僅便于表示層次結(jié)構(gòu),而且也有利于對結(jié)構(gòu)自頂向下分解; – ( 2) Jackson圖形象直觀,可讀性好; – ( 3) Jackson圖不僅能表示數(shù)據(jù)結(jié)構(gòu),也能表示程序結(jié)構(gòu)(因為程序結(jié)構(gòu)也可以由上述 3種基本結(jié)構(gòu)組成)。 A B * 循環(huán)結(jié)構(gòu) 。 PDL的缺點是不如圖形描述形象直觀 , 因此人們常常將 PDL描述與一種圖形描述結(jié)合起來使用 。 這對提高程序的可讀性是非常有益的 。 ( 3) PDL描述同自然語言很接近 , 易于理解 。 ( 2) 用 PDL寫出的程序 , 既可以很抽象 , 又可以很具體 。 1 2 3 4 5 教授 T F F F 副教授 F T F F 講師 F F T F 助教 F F F T 講座 T F F F F 50 30 25 20 15 判定樹 課時津貼 一般授課 講座 教授 副教授 講師 助教 30 25 20 15 50 PDL(過程設(shè)計語言) PDL語言具有下述特點: ( 1) PDL雖然不是程序設(shè)計語言 , 但是它與高級程序設(shè)計語言非常類似 , 只要對 PDL描述稍加變換就可變成源程序代碼 。 FIRST:=K[I] END 判定表( 1) 一張判定表由四部分組成: 列出所有條件 所有可能做的動作 各種可能組合條件 對應(yīng)的應(yīng)做的工作 判定表( 2) 例:某校制定了教師的講課課時津貼標準 。 SECOND:=0。 “ 自頂而下,逐步求精 ” 循環(huán)一次,排好一個 X[h] 排好第 H個 X [h] 找 X[J]= MAX( X[h]。 基本圖例如下: 順序結(jié)構(gòu) 塊 1 塊 2 塊 3 塊 4 條件 T F 塊 1 塊 2 選擇結(jié)構(gòu) Case I=1,2,3 T 塊 1 塊 2 多分支選擇結(jié)構(gòu) F 塊 3 塊 當條件成立時 當型循環(huán) 塊 直到條件成立時 直到型循環(huán) N- S圖 盒圖( NS圖)( 2) ? NS圖舉例 a b 條 件 1 T F Case Xi, i=2,3,4 X2 X3 X4 當條件 3成立 條 件 2 直到條件 4成立 直 到 條 件 成立 c d e f g h i j 順序結(jié)構(gòu) 選擇結(jié)構(gòu) 多分支選擇結(jié)構(gòu) 先判定型循環(huán)結(jié)構(gòu) 后判定型循環(huán)結(jié)構(gòu) F T T F 盒圖( NS圖)( 3) ? NS圖有以下一些特點: – 功能域有明確的規(guī)定,并且可以很直觀地從 NS圖上看出來; – 它的控制轉(zhuǎn)移不能任意規(guī)定,必須遵守結(jié)構(gòu)化程序設(shè)計的要求; – 很容易確定局部數(shù)據(jù)和全局數(shù)據(jù)的作用域; – 很容易表現(xiàn)嵌套關(guān)系,也可以表示模塊的層次結(jié)構(gòu)。 – 程序流程圖中用箭頭代表控制流,這樣使得程序員不受任何約束,可以完全不顧結(jié)構(gòu)程序設(shè)計的精神,隨意轉(zhuǎn)移控制; – 程序流程圖在表示數(shù)據(jù)結(jié)構(gòu)方面存在不足。在微處理機中,如果能利用的存儲容量很小,就要考慮高級語言的編譯程序在存儲壓縮方面的功能,有時則必須選擇使用匯編語言。 程序設(shè)計風格( 13) ? 存儲效率 – 主存儲器的容量曾經(jīng)很大程度上制約了程序的效率。 程序設(shè)計風格( 12) ? 代碼效率 – 在編碼之前,先化簡算術(shù)表達式和邏輯表達式; – 特別注意嵌套的循環(huán),以確定是否有語句可以從循環(huán)內(nèi)層移到循環(huán)外層; – 盡量避免使用多維數(shù)組和復(fù)雜的表格; – 盡量使用執(zhí)行時間短的算術(shù)運算; – 盡量避免混合使用不同數(shù)據(jù)類型的量; – 盡量使用整型算術(shù)表達式和邏輯表達式。 程序設(shè)計風格( 11) ? 四、輸入 /輸出語句 – 對所有輸入數(shù)據(jù)都進行校驗,以保證每個數(shù)據(jù)的有效性; – 檢查重要的輸入項組合的合法性 – 使得輸入的步驟和操作盡可能簡單,并保持簡單的輸入格式; – 輸入一批數(shù)據(jù)時,使用輸入結(jié)束指示符,不要要求用戶說明輸入項數(shù); – 在以交互式輸入/輸出方式進行輸入時,要指明可以使用的選擇值或界限值; – 應(yīng)允許缺省值; – 當程序設(shè)計語言對輸入/輸出格式有嚴格要求時,應(yīng)保持輸入格式與輸入語句的要求一致; – 給所有的輸出加注釋,并設(shè)計輸出報表格式。 a[j] : =a[j] + a[j+1]; a[j+1] : = a[j] a[j+1]; a[j] : =a[j] a[j+1]; t: =a[j]; a[j]: =a[j+1]; a[j+1]: =t; 應(yīng)改為: 為了改善程序的易讀性,應(yīng)采用直截了當?shù)拿枋龇绞健? If I=j then v[I, j]: =1 else v[I, j]: =0; 應(yīng)為: 程序設(shè)計風格( 9) 例 2: 程序段功能是交換元素 a[j]和 a[j+1]。 ? 不要為了節(jié)省空間而把多個語句寫在同一行 – 盡可能使用庫函數(shù) – 盡量用公共過程或子程序去代替重復(fù)的功能代碼段。 程序設(shè)計風格( 7) ? 三、語句構(gòu)造應(yīng)遵循簡單明了的原則 – 使用標準的控制結(jié)構(gòu) ? 在編碼階段,要遵循模塊邏輯中采用單入口、單出口標準結(jié)構(gòu)的原則,以確保源程序清晰可讀。 – 如果設(shè)計時使用了一個復(fù)雜的數(shù)據(jù)結(jié)構(gòu),則應(yīng)注解說明用程序設(shè)計語言實現(xiàn)這個數(shù)據(jù)結(jié)構(gòu)的方法和特點。 程序設(shè)計風格( 6) ? 二、數(shù)據(jù)說明 – 數(shù)據(jù)說明的次序應(yīng)當規(guī)范化。不精確的甚至是錯誤的注釋不僅對理解程序毫無幫助,反而會妨礙對程序的理解。 – 例如,對于“ ave=toal/num”的注釋應(yīng)該是:“總量除以人數(shù)求得均值”,而不應(yīng)該是“ toal除以 num得 ave”。 程序設(shè)計風格( 3) ? 程序的注釋 – 程序的注釋分為兩種:序言性注釋和功能性注釋。 – 名字的長度不應(yīng)限制,但也不宜過長,太長了容易出錯,應(yīng)選擇精煉且意義明確的名字,這樣才能簡化程序語句,改善對程序功能的理解。這對于幫助閱讀者理解程序是很重要的。選擇具體高級語言類型的原則: – 系統(tǒng)用戶的要求 – 運行環(huán)境 – 可得到的軟件工具 – 程序員的知識水平 – 軟件的可移植性要求 – 產(chǎn)品的應(yīng)用領(lǐng)域 程序設(shè)計風格( 1) ? 一、 程序內(nèi)部的文檔書寫規(guī)則 ? 程序內(nèi)部的文檔包括: – 恰當?shù)臉俗R符(變量和標號)的名字; – 適當?shù)淖⑨專? – 程序的視覺組織。 程序設(shè)計語言的選擇( 3) ? 匯編語言程序: – LOG REG3 C – MUL REG3 B – ADD REG3 A – STR REG3 D ? 高級語言程序: – D=A+B*C 程序設(shè)計語言的選擇( 4) ? 程序設(shè)計語言的分類 – 從應(yīng)用范圍的角度來分: ? 通用語言: ? 專用語言: – 從語言內(nèi)在特點的角度來分 ? 系統(tǒng)實現(xiàn)語言: ? 靜態(tài)高級語言: ? 塊結(jié)構(gòu)高級語言: ? 動態(tài)高級語言: – 從描述客觀系統(tǒng)的角度來分 ? 面向過程語言:數(shù)據(jù)結(jié)構(gòu) +算法 ? 面向?qū)ο笳Z言: 程序設(shè)計語言的選擇( 5) ? 選擇匯編語言的情況: – 軟件系統(tǒng)對程序執(zhí)行時間和使用空間都有嚴格的限制; – 系統(tǒng)硬件是特殊的微處理機,不能使用高級程序設(shè)計語言 – 大型系統(tǒng)中某一部分的執(zhí)行時間非常關(guān)鍵,或直接依賴于硬件。設(shè)分配給 A、 B、 C、 D的地址分別為: 200、 20 20 206。 – 用先全局后局部、先整體后細節(jié)、先抽象后具體的逐步求精過程, – 開發(fā)出來的程序具有清晰的層次結(jié)構(gòu),因此程序容易閱讀和理解。 i++ ) 若 A[i]沒有被剔除 , 則輸出之; } ? 前述框架中每一個加工語句都可進一步細化成一個循環(huán)語句。 j++ ) 檢查 A[ ]所有的數(shù)能否被 B[j]整除 , 并將能被整除的數(shù)從 A[ ]中剔除; /*輸出 A[ ]中所有沒有被剔除的數(shù) */ _____4 for (i = 2 。 /* 若 A[i]=i 是 B[ ]中的任一數(shù)的倍數(shù) , 則剔除 A[i] */ ___3 for (j = 1 。 B[3]=5 。 /* 建立 2到 10的素數(shù)表 B[ ], 其中存放 2到 10以內(nèi)的素數(shù) */ __2 B[1]=2 。 i = 100 。 – 篩選法為:從 2到 100中去掉 2, 3, … , 9,10的倍數(shù),剩下的就是 100以內(nèi)的素數(shù)。 – 結(jié)構(gòu)化的程序是由且僅由順序、選擇、循環(huán)三種基本控制結(jié)構(gòu)組成。 計技術(shù)的形成( 3)
點擊復(fù)制文檔內(nèi)容
教學課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1