一、前言
在 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 <= 5 ; n++) {ans *= n; .......}
9 - 循环体中的行为可以改变循环头中的表达式
示例:for (n = 1; n <= 25; n += delta) {.......}
【参数 delta 的值,可以在循环体中进行更改。】