• C-13 循环语句while


    语法结构

    1. while(表达式)
    2. 循环语句;

    while 的语法结构与 if 语法结构类似,如果表达式中结果为真,则进入循环语句,为假则不执行。

    1. #include
    2. int main()
    3. {
    4. int i = 1;
    5. while(i <= 10)
    6. {
    7. printf("%d\n",i);
    8. i++;
    9. }
    10. return 0;
    11. }

    以这段代码为例,循环语句的逻辑就是:

    i 的初始值为 1 ,满足 i 小于等于 10 ,进入循环。

    第一次循环:打印 i ,此时为 1 ,i++ 后变为 2 。

    第一次循环结束,此时为 2 ,依旧符合要求,进入第二次循环。

    第二次循环:打印 i ,此时为 2 ,i++ 后变为 3 。

    第二次循环结束,此时为 3 ,符合要求,进入第三次循环.......

    ...........

    当第十次循环结束后,i = 11 不再符合要求,不再循环。

    最终打印得到的结果就是 1-10 

    ---------------------------------------------------------------------------------------------------------------------------------

    while 中的 break

    昨天的 if 语句中出现了 break ,while 循环语句中的 break 效果可以参考 if 语句中的 break ,跳出循环。以下面代码为例:

    1. #include
    2. int main()
    3. {
    4. int i = 1;
    5. while(i <= 10)
    6. {
    7. if(i == 5)
    8. break;
    9. printf("%d\n",i);
    10. i++;
    11. }
    12. return 0;
    13. }

    与上面代码不同的是,这段代码循环语句中加入了 if 语句,当 i == 5 时跳出循环。也就是说这段代码的循环逻辑前四次都与前面相同,

    当第五次循环时,i 为 5 进入 if 语句,执行 break ,跳出循环,这些操作是在打印 i 之前,也就是说 i 还没来得及打印就跳出循环了,最终得到打印结果为 1-4 

    总结一下,在 while 循环中,break 用于永久的终止循环。

    ---------------------------------------------------------------------------------------------------------------------------------

    while 中的 continue

    1. #include
    2. int main()
    3. {
    4. int i = 1;
    5. while(i <= 10)
    6. {
    7. if(i == 5)
    8. continue;
    9. printf("%d\n",i);
    10. i++;
    11. }
    12. return 0;
    13. }

    还是这段代码,不同的是将 break 修改为了 continue 。

    当程序运行的时候得到的结果是打印出 1 2 3 4 后依旧持续运行。

    在 while 循环中 continue 作用是跳过本次循环 continue 后面的代码。所以当运行到第五次循环, i 为 5 时,执行 continue 语句,跳过本次循环后面的代码,跳过时 i 仍为 5 所以再次循环后又重复了这个过程,这就造成了一个死循环,这也就是为何打印出 1 2 3 4 后仍继续运行的原因。

  • 相关阅读:
    用HFSS仿真平面线圈的电感量
    鼠标知识系列之星闪鼠标
    Android页面跳转协议_URL Scheme详解
    gorm的增删改查
    针对Office宏病毒的高级检测
    c++ qt连接操作sqlite
    CCF推荐国际会议接收率(持续更新)
    Linux 生成复杂密码并且检查密码强度
    webpack——webpack环境安装、开发环境devServer、package.json指令相关、开发依赖和生产依赖、面试题
    50道SQL面试题
  • 原文地址:https://blog.csdn.net/ZEBKD_UFXKD/article/details/133071809