while語句:
while循環可實現“當型”循環,即當條件成立時,執行循環體。適合無法確定循環執行次數的情況。
while (表達式)
{
循環語句
}
注意:
- 表達式為循環控制條件,一般是關系表達式或邏輯表達式的形式。
- 循環控制條件也可以是任意合法的C語言表達式,例如:
while (1)
也是合法的,但注意盡量不要這樣用,因為可能會導致死循環。 - 執行時,如果程序死循環,可以使用ctrl+break組合鍵結束程序。
- 循環語句也可以是空語句。
- 循環體中的空語句可以表示循環不做任何操作,可能只是為了消耗CPU的計算控件,也有可能是為了占位暫時使用空語句的形式。
- 多條循環語句必須用花括號括起來,以復合語句的形式出現。
例:
i = 1;
while (i <= 100)
putchar('+');
i++;
程序原意是想輸出100個“+”,但由於循環體沒有使用花括號括起來,所以導致系統認為只有putchar('+');
這一條語句是循環語句,i++;
不屬於循環體,所以i的值總是為1。那么i永遠小於等於100,所以這個循環將永遠不結束,是一個死循環。
while語句執行過程:
注意:
- 循環體有可能一次也不執行。
- 循環在下列情況,將推出循環:
1)、條件表達式不成立(為0)時。
2)、在循環體中遇到break、return等語句時。 - 避免出現無限循環,又叫死循環。
- 為了避免死循環,循環體中應該有使循環趨近於結束的語句。
do while語句:
可以實現”直到型“循環。就是執行循環體,直到條件不再成立時退出循環。
do while一般形式:
do
{
循環語句
} while (表達式);