版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、C+程序設計新世紀應用型高等教育教材編審委員會 組編主編 羅燁 李秉璋第二版新世紀應用型高等教育軟件專業(yè)系列規(guī)劃教材第2章 程序的控制結構2.1 算法的概念與表示方法31.1.1 程序設計語言(1)對數(shù)據(jù)的描述。在程序中要指定數(shù)據(jù)的類型和數(shù)據(jù)的組織形式,即數(shù)據(jù)結構。(2)對操作的描述。即操作步驟,也就是算法。 數(shù)據(jù)是操作的對象,操作的目的是對數(shù)據(jù)進行加工處理,以得到期望的結果。作為程序設計人員,必須認真考慮并設計合適的數(shù)據(jù)結構和操作步驟。著名的計算機科學家Ni-kiklaus Wirth提出了一個公式來描述程序、數(shù)據(jù)結構和算法的關系:2.1 算法的概念與表示方法42.1.1 算法的概念算法就是
2、解決問題的步驟序列。算法具有以下幾個特征:(1)可行性。(2)確定性。(3)有窮性。(4)可輸人/輸出數(shù)據(jù)。2.1 算法的概念與表示方法52.1.2 算法的表示算法的表示方法有很多種,常用的算法表示方法有:自然語言、流程圖、偽代碼等。其中流程圖和偽代碼是程序設計人員常用的兩種算法表示方法。流程圖是算法圖形化的表示。用一些圖框表示各種操作,用箭頭表示算法流程,比較直觀,易于理解。2.1 算法的概念與表示方法62.1.3 程序的三種基本結構流程圖中的A、B、C代表一條指令或一個指令組,指令組是一個整體,在整個算法中呈現(xiàn)一條指令的特點,要么都執(zhí)行,要么都不執(zhí)行。P代表判斷條件。2.1 算法的概念與表
3、示方法72.1.3 程序的三種基本結構1.順序結構順序結構是算法中最簡單的結構,其特點是按照算法書寫順序依次執(zhí)行。2.分支結構分支結構的特點是根據(jù)條件判斷選擇執(zhí)行路徑。 3.循環(huán)結構循環(huán)結構用于實現(xiàn)重復性動作。根據(jù)算法的有窮性,循環(huán)必須在一定條件下進行,無條件必然會導致無窮循環(huán)。2.2 分支結構82.2.1 if語句if語句的基本格式為:if語句1語句也稱為條件語句,其功能是根據(jù)if后表達式的值,確定程序的執(zhí)行流程:是執(zhí)行,還是執(zhí)行語句202.2 分支結構92.2.2 if語句的嵌套嵌套if語句的語法格式為:if語句還有另外一種嵌套形式,語法格式為:2.2 分支結構1011嵌套if語句實現(xiàn)了多
4、分支選擇。此外C+還提供了一個switch語句,又稱為開關語句,也可以實現(xiàn)多分支選擇。它根據(jù)條件從多個分支語句序列中選擇一個作為執(zhí)行人日。語法格式為:2.2.3 switch語句2.2 分支結構2.3 循環(huán)結構12while語句實現(xiàn)當型循環(huán)。語法格式為:2.3.1 while語句其中,表達式可以是C+中的任意類型表達式,表達式的值非0(為真)時,就執(zhí)行循環(huán)體語句。循環(huán)體語句可以是單語句,也可以是復合語句。while循環(huán)的執(zhí)行流程如圖2-5所示。2.3 循環(huán)結構13do-while循環(huán)語句屬于直到型循環(huán)結構,語法格式為:2.3.2 do-while W句2.3 循環(huán)結構14for循環(huán)語句的語法格
5、式為:2.3.3 for語句2.3 循環(huán)結構15分支結構可以嵌套使用,循環(huán)結構也可以嵌套使用,形成嵌套循環(huán)。分支結構和循環(huán)結構還可以相互嵌套,形成一個復雜的程序結構,解決較為復雜的問題。C+規(guī)定,循環(huán)的嵌套只能呈包含結構,即外循環(huán)包含內循環(huán),不能呈交叉結構。因此圖2-8中(a)和(b)為合法的循環(huán)結構,通常把外層循環(huán)簡稱為外循環(huán),里層循環(huán)簡稱為內循環(huán)。(c)是錯誤的循環(huán)結構。2.3.4 循環(huán)的嵌套2.4 轉向語句161. break語句break語句只能用在switch語句和循環(huán)語句中。break語句在循環(huán)語句中用來立即終止循環(huán)。需要注意的是,在嵌套循環(huán)中,break語句終止的是其所在的那一層
6、循環(huán),如外層還有循環(huán)仍要繼續(xù)執(zhí)行。2. continue語句continue語句只能用在循環(huán)語句中,用來終止本次循環(huán),即跳過本層循環(huán)體中尚未執(zhí)行的語句,繼續(xù)下次循環(huán)。2.4 轉向語句173. goto語句goto語句格式為: goto語句的功能是將程序無條件轉移到“語句標號”處執(zhí)行。語句標號是用來表示語句的標識符,放在語句最前面,并用胃號與語句分開。結構化程序設計方法主張限制使用goto語句。因為goto語句不符合結構化程序設計的準則,無條件轉移使程序結構無規(guī)律,可讀性較差。2.5 常用算法的應用實例181.枚舉法枚舉法也稱為窮舉法,基本思想是在有限范圍內列舉所有可能的結果,找出其中符合要求的
7、解。枚舉法適合求解的問題是:可能的答案是有限個且答案是可知的,但又難以用解析法描述。這種算法通常用循環(huán)結構來完成。2.遞推法遞推法是通過問題的一個或多個已知解,用同樣的方法逐個推算出其他解,遞推法常用來求解數(shù)列問題、近似計算問題等。2.6 枚舉類型191.枚舉類型的定義枚舉類型的定義格式為: 其中,關鍵字enum指明其后的標識符是枚舉類型的名字,枚舉常量表中列出了 該類型變量所有的取值。各枚舉常量之間以“,”間隔。2.6 枚舉類型202.枚舉類型變量的定義定義了枚舉類型,就可以定義枚舉類型的變量。(1)先定義類型再定義變量,如:enum weekdaySun,Mon,Tuc, Wcd,Thu,F(xiàn)ri , Sat ;weekday wdl= Mon,wd27;(2)定義枚舉類型的同時定義變量,如:enum gender Male, Female perl , pert=Male; /定義pcr2時并初始化(3)匿名枚舉類型:enum枚舉常量列表枚舉變量列表;cnumSun, Mon, Tuc, Wcd , Thu,F(xiàn)ri,Sat wd 1,wd2;2.6 枚舉類型213.枚舉類型變量的運算枚舉類型可以參與的運算有限,一般只能進
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 美容護膚產品研發(fā)與指導手冊
- 水利工程安全運行與維護指南(標準版)
- 文化娛樂場所安全檢查與應急管理手冊
- 企業(yè)生產管理規(guī)范與成本控制手冊(標準版)
- 濱州市培訓管理制度
- 小學班主任培訓管理制度
- 班子教育培訓制度
- 數(shù)據(jù)統(tǒng)計分析方法與應用指南
- 學校后勤培訓制度
- 各個培訓機構退費制度
- 貴州省貴陽市云巖區(qū)2024-2025學年上學期八年級數(shù)學期末試題卷(原卷版+解析版)
- 2025年統(tǒng)編版五年級上冊語文期末專項訓練:字音、字形、字義(含答案)
- 湖南省2023年普通高等學校對口招生考試英語試卷
- 睡眠對考試的重要性
- 《疼痛的評估與護理》課件
- 應急通信裝備
- 高思導引3-6年級分類題目-數(shù)字謎02-三下02-簡單乘除法豎式
- 建筑工地消防安全工作總結
- 2024年黑龍江省哈爾濱市中考英語試題卷(含答案及解析)
- 外研版(2019)必修第一冊Unit 3 Family Matters Developing ideas教學設計
- 情侶自愿轉賬贈與協(xié)議書范本
評論
0/150
提交評論