迭代用來建立可重複執行的程式迴圈區塊,其中包含了幾種不同的類型,列舉如下:
其中最單純的便是 for ,用來重複執行特定次數的迴圈區塊, while 與 do-while 架構非常類似,根據指定的條件決定是否繼續重複執行指定的迴圈區塊。
最後一個 foreach 比較特殊,它用來列舉集合物件當中的元素,並且將其逐一取出作運算。
for 敘述句
如果想要重複執行某個範圍的程式區塊,可以使用for 迴圈達到這樣的目的,此種類型的敘述句格式如下:
以下的程式碼,使用for敘述句執行數值 1 加到 100 的運算,最後將結果輸出於主控台。
接下來的 for 敘述句一開始設定 intBegin 變數值為 1 ,迴圈每執行一次,便將此變數值加上 1 ,由於進行 1 至 100 的整數加總,當 intBegin 變數值大於 intend ,也就是迴圈超過 100 次的時候,則跳出 for 敘述句。
for 敘述句的程式碼區塊裏,將先前建立的變數 intSum 與計數值 intBegin 作加總。 最後的 if 判斷式運用模數運算子,檢視目前加總次數是否為 10 的倍數,當結果等於 0 的時候,表示此次迴圈為 10 的倍數,將加總結果輸出,最後一筆輸出則為 1 ~ 100 的總合。
以下來看輸出結果:
迴圈種類 | 說明 |
---|---|
for | 設定一個固定次數的迴圈敘述。 |
while | 設定一個依特定條件決定是否重複執行的廻圈。 |
do-while | 設定一個依特定條件決定是否重複執行的廻圈。 |
foreach | 重複執行列舉陣列與集合內容值的程式區塊。 |
其中最單純的便是 for ,用來重複執行特定次數的迴圈區塊, while 與 do-while 架構非常類似,根據指定的條件決定是否繼續重複執行指定的迴圈區塊。
最後一個 foreach 比較特殊,它用來列舉集合物件當中的元素,並且將其逐一取出作運算。
for 敘述句
如果想要重複執行某個範圍的程式區塊,可以使用for 迴圈達到這樣的目的,此種類型的敘述句格式如下:
for ([];[];[]) { 區塊敘述句… }括弧中的第一段敘述初始化一個變數值,表示迴圈的開始數值,通常宣告一個整數變數如下,這段敘述指定一個0的起始整數:
int loop = 0第二段表示式指定迴圈於何種情況下結束,例如當 loop 小於 10:
loop < 10每當這個條件值回傳 true 時,則迴圈繼續執行,直到變數 loop 不再小於 10 則停止 for 迴圈。第三段敘述句則設定每次變數值改變的方式,例如要讓迴圈跑 10 次,則將上述的 loop 變數加 1,如下式:
loop ++每一次迴圈執行完畢時,第二段判斷式就會重新檢視新的 loop 變數,看看是否符合繼續執行的條件,是的話繼續執行迴圈,否則直接跳出,底下的圖示說明其中的流程。
以下的程式碼,使用for敘述句執行數值 1 加到 100 的運算,最後將結果輸出於主控台。
class Program { static void Main(string[] args) { int intBegin ; const int intEnd = 100 ; int intSum = 0 ; for (intBegin =1 ; intBegin <= intEnd ; intBegin ++) { intSum += intBegin ; if (intBegin%10 == 0) Console.WriteLine("1 ~ {0} 的加總等於 {1} ",intBegin , intSum) ; } } }首先定義一個 int 常數 intEnd ,將其值初始化為 100 ,作為 for 迴圈結束的條件值,另外建立一個整數型別變數 intBegin ,此為 for 廻圈的計數變數。
接下來的 for 敘述句一開始設定 intBegin 變數值為 1 ,迴圈每執行一次,便將此變數值加上 1 ,由於進行 1 至 100 的整數加總,當 intBegin 變數值大於 intend ,也就是迴圈超過 100 次的時候,則跳出 for 敘述句。
for 敘述句的程式碼區塊裏,將先前建立的變數 intSum 與計數值 intBegin 作加總。 最後的 if 判斷式運用模數運算子,檢視目前加總次數是否為 10 的倍數,當結果等於 0 的時候,表示此次迴圈為 10 的倍數,將加總結果輸出,最後一筆輸出則為 1 ~ 100 的總合。
以下來看輸出結果:
1 ~ 10 的加總等於 55 1 ~ 20 的加總等於 210 1 ~ 30 的加總等於 465 1 ~ 40 的加總等於 820 1 ~ 50 的加總等於 1275 1 ~ 60 的加總等於 1830 1 ~ 70 的加總等於 2485 1 ~ 80 的加總等於 3240 1 ~ 90 的加總等於 4095 1 ~ 100 的加總等於 5050
沒有留言:
張貼留言