- 1、本文档共97页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Ch02控制结构(New)
Chapter 2 – 控制結構 Chapter 2 – 控制結構 2.1 簡介 在寫程式之前: 對問題有個通盤的了解 謹慎計劃解決此問題的方式 開始寫程式時: 需要知道有哪些「程式區段」可以使用 要使用好的程式設計觀念 2.2 Algorithms 演算法 所有的計算問題 可藉由執行一系列經特殊安排的動作加以解決。 解決問題的程序即所謂的 Algorithm 演算法 包括: Actions to be executed (要作的動作) 這些動作的執行順序 Program control 程式 控制 指定程式中敘述式的執行順序 2.3 Pseudocode 虛擬碼 Pseudocode(虛擬碼) 是人工的、非正式的語言,主要功用是發展演算法 類似日常用的英文 並不能在電腦上實際執行 其功用是幫助程式設計者在寫程式之前,先「想出」程式該怎麼寫。 (這是演算法、虛擬碼的目的) 可以很容易地轉換為相對的 C++ 程式 只由可以執行的敘述式組成 (不包含變數宣告) 2.4 Control Structures 控制結構 Sequential execution 循序執行 敘述式按順序從上到下執行。 Transfer of control 控制權轉移 接下來要執行的敘述式不按順序 早期控制權轉移的指令是 goto:可轉移到(幾乎)任何地方去。 Structured programming ≡ goto elimination Bohm 和 Jacopini 證明所有程式都可只用三種控制結構寫 Sequence structure 循序結構 C++ 內定的執行方式 Selection structures 選擇結構 C++ 有三種型態 - if, if/else, 與 switch Repetition structures 重複結構 C++ 有三種型態 - while, do/while, 與 for 2.4 Control Structures 控制結構 C++ 關鍵字 不能被當作識別字或變數名稱的字 2.4 Control Structures 控制結構 Flowchart 流程圖 用圖形來表示演算法 用一些特殊涵義的圖示(如:矩形、菱形、橢圓、小圓圈)表示所要執行的動作、用箭號連接。 矩形表示動作(任何型態的動作,包括輸入、輸出) 橢圓形表示程式的開始與結束 小圓圈表示一段程式的開始與結束 單一入口/單一出口 的控制結構 將一個控制結構的出口點接到下個控制結構的入口 (堆疊式控制結構). 使程式更容易建立 2.4 Control Structures 控制結構 常見的程式設計錯誤 2.1 將關鍵字當作識別字使用是語法錯誤。 軟體工程的觀點 2.1 任何 C++ 程式都可以只用七種控制結構來建立, 包括: if, if/else, switch, while, do/while, for,且只用兩種方式來組成(控制結構堆疊排列和控制結構巢狀排列) 2.5 if 選擇結構 選擇結構 在不同的 actions 間作選擇 虛擬碼的例子: If student’s grade is greater than or equal to 60 Print “Passed” 若條件為 true print 敘述式會被執行,之後再執行下個敘述。 若條件為 false print 敘述式會被忽略,直接執行下個敘述。 縮排比較容易閱讀 C++ 的編譯器會忽略空格字元(whitespace characters),包括:空白、定位(tab)、新行(newline)等字元。 2.5 if 選擇結構 將虛擬碼轉換為 C++ 敘述: if ( grade = 60 ) cout Passed; 菱形符號 (decision symbol) 表示要作決定 包含要作判斷的運算式(條件) 測試條件是否成立、執行適當的敘述 if 結構是單一入口/單一出口的結構 C 語言中的條件是否成立:以運算式結果為 0 的話就代表不成立,否則就成立。而 C++ 可以宣告 bool 型態的變數,此型態變數的內容只可能是 true 或 false。 2.5 if 選擇結構 前面虛擬碼的流程圖 2.6 if/else 選擇結構 if 只有當條件成立時才執行某個動作 if/else 當條件成立執行一個動作,條件不成立執行另一個動作 (two-way selection 二選一) 虛擬碼 if student’s grade is greater than or equal to 60print “Passed” else print “Failed” C++ 程式碼 if ( grade = 60 ) cout Passed;e
您可能关注的文档
- 5.1手机的主要性能指标.ppt.ppt
- 5-2-28自动控制原理实验课件.ppt
- 5.2.380C51单片机串行接口的工作方式.ppt
- 5.4、网络设备升级系统-内蒙古自治区政府采购网.doc
- 4.质点组动力学.ppt
- 5.3.2移位寄存器.ppt
- 50周年校庆开幕典礼流程(暂订).doc
- 500kV电缆附件的研制-中国电力企业联合会.doc
- 5.4Iteration3状态图.ppt.ppt
- 52米高台上的母爱.ppt
- 福莱特玻璃集团股份有限公司海外监管公告 - 福莱特玻璃集团股份有限公司2024年度环境、社会及管治报告.pdf
- 广哈通信:2024年度环境、社会及治理(ESG)报告.pdf
- 招商证券股份有限公司招商证券2024年度环境、社会及管治报告.pdf
- 宏信建设发展有限公司2024 可持续发展暨环境、社会及管治(ESG)报告.pdf
- 品创控股有限公司环境、社会及管治报告 2024.pdf
- 中信建投证券股份有限公司2024可持续发展暨环境、社会及管治报告.pdf
- 洛阳栾川钼业集团股份有限公司环境、社会及管治报告.pdf
- 361度国际有限公司二零二四年环境、社会及管治报告.pdf
- 中国神华能源股份有限公司2024年度环境、社会及管治报告.pdf
- 广西能源:2024年环境、社会及治理(ESG)报告.pdf
文档评论(0)