一、前言
在 C 語言的實際應用中, for 循環相比於 while 循環和 do-while循環更加靈活。以下簡單總結系 for 循環的幾種用法。
二、具體用法
for 循環的一般形式:
for (initialize; test; update)
statement;
initialize - 初始化;test - 測試;update - 更新。
1 - update 表達式中可以使用遞減計數器
示例:for (secs = 5; secs > 0; --secs) {.......}
2 - update 表達式中可以使計數器以更快速度遞增
示例:for (secs = 0; secs < 60; secs += 13) {.......}
3 - 可以用字符代替數字計數
示例:for (ch = 'a'; ch <= 'z'; ch++) {.......}
4 - 除了測試迭代次數之外,還可以測試其他條件
示例:for (secs = 1; secs * secs * secs <= 600; secs ++) {.......}
5 - 可以讓遞增的量幾何增長,而不是算術增長
示例:for (secs = 10.0; secs < 60.0; secs *= 1.3) {.......}
6 - update 表達式可以使用任意合法的表達式
示例:for (x = 1; y <= 75; y = (++x * 5) + 50) {.......}
【for 循環內部可以是不同的變量,但是這種風格不是很提倡。】
7 - 可以省略一個或多個表達式(但是不能省略分號),只要在循環中包含能結束循環的語句即可
示例:for (n = 3; ans <= 25;) {ans *= n; .......}
【如果省略了 test 表達式,測試條件會一直判定為真,也就是說 for 循環會一直執行下去。】
8 - initialize 表達式不一定是給變量賦初值,也可以使用 printf() 等函數
示例:for (n = 1,printf ("The n is %d.\n", n); n <= 5 ; n++) {ans *= n; .......}
9 - 循環體中的行為可以改變循環頭中的表達式
示例:for (n = 1; n <= 25; n += delta) {.......}
【參數 delta 的值,可以在循環體中進行更改。】
