C語言程序設(shè)計:第2章 算法-程序的靈魂_第1頁
C語言程序設(shè)計:第2章 算法-程序的靈魂_第2頁
C語言程序設(shè)計:第2章 算法-程序的靈魂_第3頁
C語言程序設(shè)計:第2章 算法-程序的靈魂_第4頁
C語言程序設(shè)計:第2章 算法-程序的靈魂_第5頁
已閱讀5頁,還剩11頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、第2章 算法-程序的靈魂關(guān)鍵知識點算法算法的描述方法傳統(tǒng)流程圖N-S流程圖2022/9/241蘇州大學(xué)計算機科學(xué)與技術(shù)學(xué)院算法一個程序主要包括以下兩方面的信息:對數(shù)據(jù)的描述。在程序中要指定用到哪些數(shù)據(jù)以及這些數(shù)據(jù)的類型和數(shù)據(jù)的組織形式就是數(shù)據(jù)結(jié)構(gòu)(data structure)對操作的描述。即要求計算機進行操作的步驟也就是算法(algorithm)2022/9/24蘇州大學(xué)計算機科學(xué)與技術(shù)學(xué)院2算法著名計算機科學(xué)家沃思(Nikiklaus Wirth)提出一個公式: 算法 + 數(shù)據(jù)結(jié)構(gòu) = 程序算法、數(shù)據(jù)結(jié)構(gòu)、程序設(shè)計方法和語言工具是一個程序設(shè)計人員應(yīng)具備的知識2022/9/24蘇州大學(xué)計算機

2、科學(xué)與技術(shù)學(xué)院3算法算法:廣義地說,為解決一個問題而采取的方法和步驟對同一個問題,可以有不同的解題方法和步驟,也就是說同一個問題,可以設(shè)計出不同程序為了有效地進行解題,不僅需要保證算法正確,還要考慮算法的質(zhì)量,選擇合適的算法,也就是程序優(yōu)化2022/9/24蘇州大學(xué)計算機科學(xué)與技術(shù)學(xué)院4算法計算機算法可分為兩大類別:數(shù)值運算算法非數(shù)值運算算法數(shù)值運算的目的是求數(shù)值解非數(shù)值運算包括的面十分廣泛,最常見的是用于事務(wù)管理領(lǐng)域2022/9/24蘇州大學(xué)計算機科學(xué)與技術(shù)學(xué)院5算法一個有效算法應(yīng)該具有以下特點:有窮性:確定性:有零個或多個輸入:有一個或多個輸出:有效性:2022/9/24蘇州大學(xué)計算機科學(xué)

3、與技術(shù)學(xué)院6算法的描述方法算法的描述方法有:自然語言傳統(tǒng)流程圖結(jié)構(gòu)化流程圖偽代碼2022/9/24蘇州大學(xué)計算機科學(xué)與技術(shù)學(xué)院7算法描述方法問題:判定2012年是否為閏年,并將結(jié)果輸出閏年的條件:能被4整除,但不能被100整除的年份都是閏年,如2008、2012、2048年能被400整除的年份是閏年,如2000年不符合這兩個條件的年份不是閏年2022/9/24蘇州大學(xué)計算機科學(xué)與技術(shù)學(xué)院8算法的自然語言描述算法的自然語言描述如下:S1:2000yearS2:若year不能被4整除,則輸出year 的值和“不是閏年”。然后轉(zhuǎn)到S6S3:若year能被4整除,不能被100整除,則輸出year的值和

4、“是閏年”。然后轉(zhuǎn)到S6S4:若year能被400整除,則輸出year的值和“是閏年” ,然后轉(zhuǎn)到S6S5: 其他情況輸出year的值和“不是閏年”S6: 停止2022/9/24蘇州大學(xué)計算機科學(xué)與技術(shù)學(xué)院9傳統(tǒng)流程圖流程圖是用一些圖框來表示各種操作用圖形表示算法,直觀形象,易于理解起止框輸入輸出框處理框判斷框流程線連接點注釋框2022/9/2410蘇州大學(xué)計算機科學(xué)與技術(shù)學(xué)院傳統(tǒng)流程圖判斷框的作用2022/9/24蘇州大學(xué)計算機科學(xué)與技術(shù)學(xué)院11x0YN一個入口兩個出口傳統(tǒng)流程圖連接點的作用2022/9/24蘇州大學(xué)計算機科學(xué)與技術(shù)學(xué)院122.4.2用流程圖表示算法流程圖是用一些圖框來表示各

5、種操作用圖形表示算法,直觀形象,易于理解起止框輸入輸出框處理框判斷框位置不夠防止交叉YN開始2000yearyear不能被4整除year是閏年year不能被100整除結(jié)束year不能被400整除year不是閏年year是閏年year不是閏年YNYN傳統(tǒng)流程圖2022/9/2413蘇州大學(xué)計算機科學(xué)與技術(shù)學(xué)院N-S流程圖N-S流程圖用以下的流程圖符號:ABABYNpA當(dāng)p1成立A直到p2成立順序結(jié)構(gòu)選擇結(jié)構(gòu)循環(huán)結(jié)構(gòu)(當(dāng)型)循環(huán)結(jié)構(gòu)(直到型)2022/9/2414蘇州大學(xué)計算機科學(xué)與技術(shù)學(xué)院例2.13 將例2.3判定閏年的算法用N-S圖表示2000year否是year%4為0否是輸出year非閏年year%100不為0year%400為0是否輸出year非閏年輸出year閏年輸出year閏年N-S流程圖2022/9/2415蘇州大學(xué)計算機科學(xué)與

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論