天天看點

零基礎入門C++(4)—程式流程結構

1 選擇結構

1.1 if語句

1.2 三目運算符

1.3 switch語句

2 循環結構

2.1 while循環語句

2.2 do...while循環語句

2.3 for循環語句

2.4 嵌套循環

3 跳轉語句

3.1 break語句

3.2 continue語句

3.3 goto語句

C/C++支援最基本的三種程式運作結構:順序結構、選擇結構、循環結構

順序結構:程式按順序執行,不發生跳轉

選擇結構:依據條件是否滿足,有選擇的執行相應功能

循環結構:依據條件是否滿足,循環多次執行某段代碼

作用: 執行滿足條件的語句

if語句的三種形式

單行格式if語句

多行格式if語句

多條件的if語句

單行格式if語句:<code>if(條件){ 條件滿足執行的語句 }</code>

示例:

零基礎入門C++(4)—程式流程結構
注意:if條件表達式後不要加分号

多行格式if語句:<code>if(條件){ 條件滿足執行的語句 }else{ 條件不滿足執行的語句 };</code>

零基礎入門C++(4)—程式流程結構

3. 多條件的if語句:<code>if(條件1){ 條件1滿足執行的語句 }else if(條件2){條件2滿足執行的語句}... else{ 都不滿足執行的語句}</code>

零基礎入門C++(4)—程式流程結構

案例需求:

提示使用者輸入一個聯考考試分數,根據分數做如下判斷

分數如果大于600分視為考上一本,大于500分考上二本,大于400考上三本,其餘視為未考上大學;

在一本分數中,如果大于700分,考入北大,大于650分,考入清華,大于600考入人大。

作用: 通過三目運算符實作簡單的判斷

文法:<code>表達式1 ? 表達式2 :表達式3</code>

解釋:

如果表達式1的值為真,執行表達式2,并傳回表達式2的結果;

如果表達式1的值為假,執行表達式3,并傳回表達式3的結果。

零基礎入門C++(4)—程式流程結構
總結:和if語句比較,三目運算符優點是短小整潔,缺點是如果用嵌套,結構不清晰

作用: 執行多條件分支語句

文法:

注意1:switch語句中表達式類型隻能是整型或者字元型 注意2:case裡如果沒有break,那麼程式會一直向下執行 總結:與if語句比,對于多條件判斷時,switch的結構清晰,執行效率高,缺點是switch不可以判斷區間

作用: 滿足循環條件,執行循環語句

文法:<code>while(循環條件){ 循環語句 }</code>

解釋:隻要循環條件的結果為真,就執行循環語句

零基礎入門C++(4)—程式流程結構
注意:在執行循環語句時候,程式必須提供跳出循環的出口,否則出現死循環

文法: <code>do{ 循環語句 } while(循環條件);</code>

注意: 與while的差別在于do…while會先執行一次循環語句,再判斷循環條件

零基礎入門C++(4)—程式流程結構
總結:與while循環差別在于,do…while先執行一次循環語句,再判斷循環條件

文法:<code>for(起始表達式;條件表達式;末尾循環體) { 循環語句; }</code>

零基礎入門C++(4)—程式流程結構
注意:for循環中的表達式,要用分号進行分隔 總結:while , do…while, for都是開發中常用的循環語句,for循環結構比較清晰,比較常用

作用: 在循環體中再嵌套一層循環,解決一些實際問題

零基礎入門C++(4)—程式流程結構

作用: 用于跳出選擇結構或者循環結構

break使用的時機:

出現在switch條件語句中,作用是終止case并跳出switch

出現在循環語句中,作用是跳出目前的循環語句

出現在嵌套循環中,跳出最近的内層循環語句

示例1:

示例2:

零基礎入門C++(4)—程式流程結構

示例3:

零基礎入門C++(4)—程式流程結構

作用: 在循環語句中,跳過本次循環中餘下尚未執行的語句,繼續執行下一次循環

零基礎入門C++(4)—程式流程結構
注意:continue并沒有使整個循環終止,而break會跳出循環

作用: 可以無條件跳轉語句

文法: <code>goto 标記;</code>

解釋: 如果标記的名稱存在,執行到goto語句時,會跳轉到标記的位置

零基礎入門C++(4)—程式流程結構
注意:在程式中不建議使用goto語句,以免造成程式流程混亂