学科分类
目录
C语言

for循环

在前面的小节中分别讲解了while循环和do…while循环。在程序开发中,还经常会使用另外一种循环语句,即for循环,它通常用于循环次数已知的情况,具体语法格式如下:

for(初始化表达式; 循环条件; 操作表达式)
{
  执行语句
}

在上面的语法格式中,for关键字后面()中包括了初始化表达式、循环条件和操作表达式3部分内容,它们之间用“;”分隔,{}中的执行语句为循环体。

接下来分别用“①”表示初始化表达式、“②”表示循环条件、“③”表示操作表达式、“④”表示循环体,通过序号来分析for循环的执行流程,具体如下:

for(① ; ② ; ③)
{
  ④
}

第1步,执行①。

第2步,执行②,如果判断条件的值非0,执行第3步;如果判断条件的值为0,退出循环。

第3步,执行④。

第4步,执行③,然后继续执行第2步。

第5步,退出循环。

for循环结构的流程图如图1所示。

>图1 for循环流程图

下面通过一个案例演示for循环的用法,该案例要求使用for循环实现自然数1~100求和,案例的具体实现如例1所示。

例1 for.c

 1  #include <stdio.h>
 2  int main()
 3  {
 4    int sum = 0;
 5    for(int i = 1; i <= 100; i++)   //i的值会在1~100之间变化
 6    {
 7      sum += i;           //实现sum与i的累加
 8    }
 9    printf("sum = %d\n", sum);
 10   return 0;
}

例1运行结果如图2所示。

图2 例1运行结果

在例1中,第4行代码定义变量sum并初始化为0,用于存储累加和;第5~8行代码使用for循环实现数据累加。在for循环中定义并初始化变量i的值为1,i=1语句只会执行这一次。接下来判断循环条件i<=100是否成立,条件成立,则执行循环体sum+=i,执行完毕后,执行操作表达式i++,i的值变为2,然后继续进行条件判断,i<=100成立,开始下一次循环…,直到i=101时,条件i<=100不成立,结束循环,执行for循环后面的第9行代码,打印“sum=5050”。

为了让读者能熟悉循环的执行过程,现以表格形式列举循环中变量sum和i的值的变化情况,具体如表1所示。

表1 sum和i循环中的值

循环次数 i sum
第1次 1 1
第2次 2 3
第3次 3 6
第4次 4 10
第100次 100 5050
点击此处
隐藏目录