C语言菜鸟基础教程之for循环

先看程序:

#include <stdio.h>

int main()
{
  for(int i = 0; i < 5; i++)
  {
    printf("i = %d\n", i);
  }
  
  printf("Loop ended!\n");
  
  return 0;
}

运行结果:

i = 0
i = 1
i = 2
i = 3
i = 4
Loop ended!



for循环的语句结构为:
for(表达式1; 表达式2; 表达式3)
{
    语句;
}

其执行顺序为:
(1)执行表达式1
(2)执行表达式2。表达式2是一个判断语句;若为真,则执行{}中的语句。若为假,则结束for循环
(3)若表达2为真,执行表达式3
(4)执行表达式2
(5)不断重复步骤(3)和步骤(4),直到表达式2为假,结束循环。

流程图如下所示:

程序执行过程:
第一次,表达式1中i的值为0;表达式2中0<5是成立的,打印出i的值。
第二次,表达式3中i++后i变为1;表达式2中1<5是成立的,打印出i的值。
第三次,表达式3中i++后值变为2,表达式2中2<5是成立的,打印出i的值。
第四次,表达式3中i++后值变为3,表达式2中3<5是成立的,打印出i的值。
第五次,表达式3中i++后值变为4,表达式2中4<5是成立的,打印出i的值。
第六次,表达式3中i++后值变为5,表达式2中5<5是不成立的,不执行大括号中的打印语句。循环结束,跳出循环。程序继续往下执行。

作业:
(1)使用断点观察上面程序的每一步的执行过程
(2)根据上面的分析,思考下面的程序的运行结果并动手操作一遍

#include <stdio.h>

int main()
{
  for(int i = 0; i < 0; i++)
  {
    printf("i = %d\n", i);
  }
  
  printf("Loop ended!\n");
  
  return 0;
}

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: