> 文章列表 > 【C语言】for 关键字

【C语言】for 关键字

【C语言】for 关键字

  • 🚩WRITE IN FRONT🚩   

  • 🔎介绍:"謓泽"正在路上朝着"攻城狮"方向"前进四"🔎
  • 🏅荣誉:2021|2022年度博客之星物联网与嵌入式开发TOP5|TOP4、2021|2022博客之星TOP100|TOP63、阿里云专家博主、掘金优秀创作者、全网粉丝量5w+、全网访问量70w+🏅
  • 🆔本文章内容由 謓泽 原创 如需相关转载还请通知博主⚠
  • 📝个人主页:謓泽的博客📃
  • 📣专栏系列:【C语言】关键字📃
  • 🎁点赞👍+ 收藏⭐️+ 留言📝​

⑩④ for ⇿ 循环「灵活」

        ⒈描述⇢循环允许您编写一个执行指定次数的循环控制结构,在循环语句当中for语句是应用最灵活的。

        ⒉定义⇢for(循环变量赋初值表达式1;循环条件表达式2;循环变量表达式3)‘\\n’{语句块};

当执行到for语句的时,程序首先计算第一个表达值,接着判定第二个表达式的值。如果第二个表达式为真,程序就执行语句块的内容,当执行完语句块的内容回到表达式当中。接着并计算第三个表达式,然后检验判定第二个表达式是否为真,为真执行循环;如此反复,直到第二个表达式的值为假,则退出循环。

        ⒊注意⇢for循环嵌套尽量三层即可,太多可能会懵。

🕹拓展知识点如下👇

        『三种循环结构,分别是 do...while、while、for

        对于任何一种循环的时候一定是要有循环当中的判定条件的[注→死循环除外]

        说明🥰一般来说正常的循环都要有④部分组成。

        ⒈循环条件初始化整形变量。

        ⒉while括号里面的表达式也就是循环判定。

        ⒊代码块当中执行的语句,例:输出printf()打印语句。

        ⒋循环条件更新,因为总有一次我们要退出循环[注→死循环除外]

        🍎注意对于for循环来说在它的循环表达式有③个而while和do...while只有①个同时在循环当中也是for循环用的最多了,因为它的语法结构是很紧凑的。

        如下代码所示👇

​#include<stdio.h>
int main(void)
{int i = 0;int sum = 0;for (i = 1; i <= 100; i++){sum = sum + i;}printf("sum = %d\\n",sum);return 0;
}

运行结果🖊

        sum = 5050

✔代码说明解析

        执行到 for 语句时,先给 i 赋初值 1,判断 i<=100 是否成立;因为此时 i=1,i<=100 成立,所以执行循环体。循环体执行结束后(sum的值为1)再计算 i++。

        第二次循环时,i 的值为2,i<=100成立,继续执行循环体。循环体执行结束后(sum的值为3) 再计算 i++。

        重复执行步骤2,直到第101次循环,此时i的值为101,i<=100不成立,所以结束循环。

        每条for语句包含3个用分号隔开的表达式。这3个表达式用一对圆括号括起来,其后紧跟循环语句或语句块。

        省略表达式1的时候,其后的分号是不能省略的。

        有些程序当中省略表达式2(循环条件)的话,可能会导致程序发生死循环。

        所谓的 "死循环" 就是:循环条件永远成立,循环会一直进行下去,永不结束。死循环对程序的危害很大,一定要避免。通常都是在for循环上的判断条件上出现"死循环"。

        省略表达式3的话(自增自减),就不会再修改表达式2的循环变量了,除非你在语句块中加上了自增自减运算符。

for 循环的嵌套 

        for 循环嵌套实际上就是在for语句里面再次进行for语句的使用这种叫做循环嵌套。

        那么接下来举个代码示例,来讲解下什么是for循环。如下代码所示👇

#include <stdio.h>
int main(void)
{int i, j;for(i=1; i<=4; i++){  //外层for循环-第一层for(j=1; j<=4; j++){  //内层for循环-第二层printf("%-4d", i*j);}printf("\\n");//换行}return 0;
}

运行结果🖍

1   2   3   4   
2   4   6   8   
3   6   9   12  
4   8   12  16  

✔代码说明解析

        外层 for 第一次循环时,i为1,内层 for 要输出四次 1*j 的值,也就是第一行数据;内层  for 循环结束后执行 printf("\\n"),输出换行符;接着执行外层 for 的 i++ 语句。此时外层 for 的第一次循环才算结束。

        外层 for 第二次循环时,i为2,内层 for 要输出四次 2*j 的值,也就是第二行的数据;接下来执行 printf("\\n") 和 i++,外层 for 的第二次循环才算结束。外层 for 第三次、第四次循环以此类推。

        通过上述代码我们可以看到,内层 for 每循环一次输出一个数据。而外层 for 每循环一次输出一行数据。