第 6章 C控制語句:迴圈
迴圈是一個強大的程式設計工具。在建立一個迴圈時應特別注意三個方面:
- 明確定義結束迴圈的條件
- 確保在迴圈判斷中使用的值在第一次使用之前已經初始化
- 確保迴圈在每個週期中更新了判斷值
6.1 while 迴圈
while 語句是一個入口條件迴圈,其一般形式為:
while(epression)
statement
在 expression 變為假之前重複執行 statement,statement 可以是一個簡單語句或一個複合語句。
關係運算符(ralational operator) | |
運算子 | 含義 |
< | 小於 |
<= | 小於或等於 |
== | 等於 |
>= | 大於或等於 |
> | 大於 |
!= | 不等於 |
關係運算符(ralational operator)被用來構成關係表示式(ralational expression)。關係表示式為真時值為1,關係表示式為假時值為0。,這與_Bool 型別變數所允許的值保持一致。通常使用關係表示式作為判斷條件的語句可以使用任何表示式作為判斷,非零值被認為是“真”,零值被認為是“假”。
6.2 for 迴圈
for 迴圈是一個入口條件迴圈,其一般形式為:
for(initialize;test;update)
statement
關鍵字 for 之後的圓括號內包含了由兩個分號隔開的三個表示式。第一個表示式進行初始化(initialize),在 for 迴圈開始時執行一次。第二個表示式是判斷條件(test),在每次執行迴圈前都要對它進行求值,當表示式為假時迴圈就結束了。第三個表示式(update)進行更新,在每次迴圈結束時進行計算。
賦值運算子(assignment operator) | ||
運算子 | 例項 | 含義 |
= | gold = 20; | 將值20賦給變數 gold |
+= | apple += 5; | apple = apple + 5; |
-= | pen -= 5; | pen = pen - 5; |
*= | pineapple -= 5; | pineapple = pineapple - 5; |
/= | scores /= 5; | scores = scores / 5; |
%= | miles %= 5; | miles = miles % 5; |
逗號運算子:逗號運算子把兩個表示式連結成一個表示式,並保證最左邊的表示式最先計算,整個表示式的值是最右邊表示式的值。它通常被用在 for 迴圈的控制表示式中以包含多個資訊。
6.3 退出條件迴圈:do while
do while 迴圈是一個退出條件迴圈,其一般形式為:
do
statement
while(expression);
do while 的判斷條件在執行迴圈之後進行檢查,迴圈體中的語句至少被執行一次,在 expression 為假之前重複執行 statement。do while 迴圈本身是一個語句,它需要一個結束的分號。
6.4 巢狀迴圈
巢狀迴圈(nested loop)是指一個迴圈內的另一迴圈。巢狀迴圈中,內部迴圈在外部迴圈的每次單獨迴圈中都執行其所有迴圈。
6.5 陣列
一個數組就是線性儲存的一系列相同型別的值。整個陣列有一個單一的名字,單獨的項或元素可以用一個整數索引來進行訪問。用於標識陣列元素的數字稱為下標(subscript)、索引(index)或偏移量(offset)。陣列元素是從0開始編號的,最後一個元素的下標比元素的個數小1。
6.6 定義具有返回值的函式
使用一個函式需要完成三個單獨的步驟:
- 使用函式原型宣告函式
- 在程式中通過函式呼叫來使用該函式
- 定義函式