可以按任意数量递增或递减循环计数器。以下是演示如何执行此操作的示例:
long sum = 0L;
for(int n = 1 ; n < 20 ; n += 2)
sum += n;
printf("1-20之间的奇数之和是:%ld", sum);
前一个循环将所有从1
加到20
的奇数整数累加。第三个控制表达式在每次迭代时将循环变量n
递增2
。
要将每个第7
个整数从1
到1000
累加,可以这编写:
int sum = 0;
for(int n = 1 ; n < 1000 ; n = n + 7)
sum += n;
可以在第一个代码片段中重写循环,将奇数从1
到20
相加,这次在第三个语句中更新了两个值。如下所示:
for(int n = 1 ; n<20 ; sum += n, n += 2)
;
第三个控制表达式由两个用逗号(,
)分隔的表达式组成。
浮点循环控制变量
循环控制变量可以是浮点变量。 下面是一个将1/1
到1/10
的分数相加的循环:
double sum = 0.0;
for(double x = 1.0 ; x < 11 ; x += 1.0)
sum += 1.0/x;
小数值通常没有浮点形式的精确表示:
for(double x = 0.0 ; x != 2.0 ; x+= 0.2) // 无限循环
printf("\nx = %.2lf",x);