流程控制語句

2022-07-14 09:12:09 字數 3397 閱讀 9170

流程結構一共有三種,順序結構,選擇結構,迴圈結構。任何問題都能使用這三種結構來解決。

順序結構

就是從上往下依次執行

選擇結構

if語句有三種形式

1.if(條件表示式)

當if中的條件為true的時候,執行大括號中的執行體,當if中的條件為false的時候,什麼也不執行。

2.if(條件表示式)else

當if中的條件為true時,執行if的執行體,當if中的條件為false時,執行else的執行體

3.if(條件表示式1)else if(條件表示式2)...else

在if...else if...else語句中,首先判斷條件1是否滿足,不滿足再判斷條件二是否滿足……只要有乙個條件滿足,則後面的條件都不再執行。

所以,多條件判斷用 if...else if...else 效率更高

格式:

1 switch(表示式)

case 中的常量型別可以是 byte、short、int、char、enum、string

其中enum是jdk5開始支援的,string 是jdk7開始支援

需要注意的問題有:

1.執行順序與default書寫的位置無關,一定是先與case比較,沒有符合的case時才走default

1 switch(i)

結果:

2

星期二8

輸入錯誤!請輸入數字1-7之間的整數!

2.符合case條件時,才會執行語句

3.break起跳出switch語句的作用,沒有break會在符合條件的時候一直向下穿透

此時如果default寫在最後,也會執行default裡面的語句,如:

1 switch(i)

請輸入數字1-7之間的整數,輸入字元退出

6星期六

星期日輸入錯誤!請輸入數字1-7之間的整數!

程式結束!

default寫在上面則不會執行

另,執行體相同的case可以合併

迴圈結構

1.while(迴圈條件)

2.dowhile(迴圈條件);

do...while 迴圈的特點是不管條件滿不滿足,都先執行一次迴圈體

3.for 迴圈

死迴圈的寫法

while(true){}

for(;true;){}

for(;;){}

do{}while(true);

注意,while(true){}; //編譯會報錯,最後的分號會是無法訪問的語句

巢狀迴圈

巢狀迴圈是指在乙個迴圈結構中巢狀另乙個迴圈結構。while、do…while、for迴圈語句都可以進行巢狀,並且它們之間也可以互相巢狀。用的最多的是for迴圈巢狀for迴圈。

總迴圈次數等於內迴圈次數乘以外迴圈次數。

跳出迴圈涉及到兩個關鍵字breakcontinue

break 是終止整個迴圈,如果是在巢狀的迴圈中,那麼就是跳出離 break 最近的迴圈

(break 還可作用於switch條件語句中,作用是終止某個case並跳出switch結構)

continue 是終止本次迴圈,繼續執行程式,如果是在巢狀迴圈中,則跟break一樣是就近原則 

要想跳出外層迴圈可以對要跳出的迴圈使用標記,如:

1 a: for(int i=1;i<=9;i++)

6system.out.println();

7 }

1 a: for(int i=1;i<=9;i++)

6system.out.println();

7 }

*********************************************=

列印腰為6的等腰直角三角形

分析:一共要列印6行,所以外層迴圈次數是6,

而這6行,每一行列印的列數依次為 1 2 3 4 5 6,為遞增等差數列  an = a1+(n-1)*d

i: 1 2 3 4 5 6

j:1 2 3 4 5 6

j =i;

1

for(int i=1;i<=6;i++)

5system.out.println();

6 }

結果為:

** *

* * *

* * * *

* * * * *

* * * * * *

如果要倒著列印即列印出如下結果

* * * * * *

* * * * *

* * * *

* * *

* **

分析:一共要列印6行,所以外層迴圈次數是6,

而這6行,每一行列印的列數依次為 6 5 4 3 2 1,為遞減等差數列  an = a1+(n-1)*d

i: 1 2 3 4 5 6

j:6 5 4 3 2 1

j =6+(i-1)*(-1)=7-i;

所以程式為

1

for(int i=1;i<=6;i++)

5system.out.println();

6 }

列印腰為3的等腰三角形

oo o o

o o o o o

分析:便於效果的觀察,可以理解為列印出

x x x o

x x o o o

x o o o o o

所以,第一步要列印出

x x x

x xx

內迴圈每次列印的個數為 3 2 1,為遞減等差數列  

an = a1+(n-1)*d

i: 1 2 3

j: 3 2 1

j=3+(i-1)*(-1)=4-i;

**為

1

for(int i=1;i<=3;i++)

5system.out.println();

6 }

接下來要列印的是

x x x o

x x o o o

x o o o o o

在第一次列印的基礎上,每一行後面又是 o ,個數分別為1 3 5 7 9 等差數列 , j = 2*i - 1;

**為

1

for(int i=1;i<=3;i++)

5for(int j=1;j<=2*i-1;j++)

8system.out.println();

9 }

最後將 『x』 替換成空格就可以列印出題目中的等腰三角形了

Python流程控制語句流程控制語句

流程控制語句1 if語句 if 語句基本用法 if 表示式 語句塊其中,表示式可以是乙個單純的布林值或變數,也可以是比較表示式或邏輯表示式,如果表示式為真,則執行 語句塊 如果表示式的值為假,就跳 過 語句塊 繼續執行後面的語句。2 if else語句 if else 語句基本用法 if 表示式 語...

流程控制語句

for a b c 若迴圈體中出現continue,c語句仍得到執行。while dowhile b 執行完do後大括號,再檢驗while b 條件,若為真,繼續。從而有a語句塊至少執行一次的特性。continue 迴圈體內餘下語句忽略,繼續下次迴圈。break用於跳出迴圈或switch.case....

流程控制語句

迴圈 while do while for 判斷 if else switch case 異常處理 try catch finally throw 分支 break continue label return 迴圈 while和do while語句 while語句用於在條件保持為true時反覆執行乙...