C语言大师之路:从零到王者/新手入门(4)循环语句

序(一些闲话)

  1. 我希望我的语言不要像专业书那样让人眼花缭乱,所以当我解释语法时,我会尽量避免使用太多专业术语,让说明更容易理解。我会用通俗易懂的语言来解释,而不是像专业书籍那样让人感到困惑。
  2. 本人计划通过文章分享C语言的核心知识点和学习心得。鉴于仍处于学习阶段,文章中可能包含错误或片面观点,因此诚挚欢迎读者的指正。期望与读者共同学习、进步,最终成为入门C语言。
  3. 这个系列文章旨在简要介绍每个C语言知识点,希望读者(也包括自己)能对C语言有一个基本的了解。所以每一步尽量非常详尽 .
    c语言教程

C语言大师之路:从零到王者/新手入门(4)循环语句

循环

  • 定义:重复的执行同一段代码。循环的实质其实就是有条件的重复。
  • 例如:我们要求50个整数的和 我们就要重复执行50次的加法操作。这时候就用到了循环。
  • 我们接下来要学的就是三个循环 for、while、do while循环。以及break continue关键字的用法。

1.while循环

  • 在C语言中,while循环是一种控制结构,用于重复执行一段代码,直到给定的条件不再满足为止。翻译为中文就是“当…的时候”。C语言是非常直接的。你告诉他“当…的时候”他就按照你的指令执行。
    while循环的格式
    在这里插入图片描述
    上述代码的含义为:先计算条件表达式的值,当值为真(非0)时,执行“语句块”;执行完“语句块”,再次计算表达式的值,如果为真,那么就继续执行”语句块“这个过程会一直重复,直到表达式的值为假(0),就退出循环,执行while后面的代码。
  • while 中的语句 必须要用一对花括号{}括起来;

下面我们来看一段示例代码

使用whlie循环计算1-100的和

#include <stdio.h>
int main() {
    int sum = 0;
    int i = 1;
    while (i <= 100) {
        sum += i;
        i++;
    }
    printf("1到100的和是: %d\n", sum);
    return 0;
}


  • 在这个程序中:
    sum 初始值为0,用于累加从1到100的值。
    i 初始值为1,每次循环递增1。
    while (i <= 100) 是循环条件,当 i 小于或等于100时,循环继续执行。
    当 i 超过100时,条件表达式 i <= 100 不再为真,循环终止,程序输出1到100的和。

这里是代码的运行结果
在这里插入图片描述


2.do while循环

在这里插入图片描述

  • 在C语言中,do while表达式,是先执行语句块,然后计算表达式,为真,则继续执行语句块;为假则跳出循环。

下面我们来看一段示例代码

使用do whlie循环计算1-100的和

#include <stdio.h>
int main() {
    int sum = 0;
    int i = 1;
    do {
        sum += i;
        i++;
    } while (i <= 100);
    printf("1到100的和是:%d\n", sum);
    return 0;
}

这里是代码的运行结果
在这里插入图片描述
:do while 和 while的区别在于:do while 是先做再判断。while是先判断再做。
也就是说 do while循环是必定会执行一次的 而while循环有可能一次也执行不了


3.for循环

  • 在C语言中,for循环是一种结构较为紧凑的循环格式。 在这里插入图片描述
    for循环的执行过程为
  1. 我们先执行表达式1;
  2. 再执行表达式2,如果它的值为真(非0),则执行循环体,否则结束循环
  3. 执行完循环体之后 再执行表达式3
  4. 重复执行步骤2 . 3 直到表达式2的值为假,结束循环。

这里需要特别注意的是
“表达式1”,仅仅只在第一次循环时执行,以后都不会再执行了,可以把它当作一个初始化语句来对待,”表达式2” 一般是一个关系表达式,决定了是否还需要循环,称作“循环条件”。“表达式3”很多情况下都是一个自增 或者自减操作的表达式,以便可以使循环条件逐渐变得不会成立。

  • 还有一个小点就是 如果说循环体为一条语句的话
    for循环的花括号,可以省略不写。 (但不推荐不写)读者可以自己一试。

下面我们来看一段示例代码

使用for循环计算1-100的和

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

这里是代码的运行结果
在这里插入图片描述


4. break 和 continue

break:提前终止循环。
当break用于switch语句表示跳出switch语句,当break关键字用于while,for循环时,会终止循环而执行整个循环语句后面的代码。break关键字通常和if语句一起使用,即满足条件时便跳出循环。
continue:终止本次迭代。
作用是跳出循环体中剩余的语句,而强制进入下一次循环。continue语句只用在while,for循环中,常常与if条件语句一起使用,来判断条件是否成立。
下面我将用两个例子,来直接区分 break 和 continue 之间的区别。
下面我们来看break关键字示例代码

#include <stdio.h>
int main() {
    for (int i = 0; i < 10; i++) {
        if (i == 5) {
            break;  // 当 i 等于 5 时,跳出循环
        }
        printf("%d\n", i);
    }
    printf("循环结束\n");
    return 0;
}

这里是代码的运行结果
在这里插入图片描述


在上面的例子中,当 i 等于 5 时,break 语句会立即终止 for 循环,程序将继续执行循环后的代码。

我们再来看一下continue关键字示例代码

#include <stdio.h>
int main() {
    for (int i = 0; i < 10; i++) {
        if (i % 2 == 0) {
            continue;  // 当 i 是偶数时,跳过本次循环的剩余部分
        }
        printf("%d\n", i);
    }
    printf("循环结束\n");
    return 0;
}

这里是代码的运行结果
在这里插入图片描述


在这个例子中,当 i 是偶数时,continue 语句会跳过本次循环的剩余部分,直接开始下一次循环的迭代。因此,只有奇数会被打印出来。
意气风发,漫卷疏狂
学习是成长的阶梯,每一次的积累都将成为未来的助力。我希望通过持续的学习,不断汲取新知识,来改变自己的命运,并将成长的过程记录在我的博客中。

如果我的博客能给您带来启发,如果您喜欢我的博客内容,请不吝“点赞”、“评论”和“收藏”,也欢迎您关注我的博客。
您的支持是我前行的动力。听说点赞会增加自己的运气,希望您每一天都能充满活力!

愿您每一天都快乐,也欢迎您常来我的博客。我叫意疏,希望我们一起成长,共同进步。
logo
我是意疏 下次见!

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-21 02:08:01       142 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-21 02:08:01       156 阅读
  3. 在Django里面运行非项目文件

    2024-07-21 02:08:01       131 阅读
  4. Python语言-面向对象

    2024-07-21 02:08:01       141 阅读

热门阅读

  1. Spring Cloud Gateway 响应数据加密

    2024-07-21 02:08:01       34 阅读
  2. HTTP爬虫IP流量和数量计费模式选择指南

    2024-07-21 02:08:01       27 阅读
  3. PHP项目开发流程概述

    2024-07-21 02:08:01       28 阅读
  4. Go知识点记录

    2024-07-21 02:08:01       30 阅读
  5. DAY05 CSS

    DAY05 CSS

    2024-07-21 02:08:01      34 阅读
  6. MacOS命令行运行fortran程序|编程私教解答

    2024-07-21 02:08:01       31 阅读
  7. 类与对象-多态-案例3-电脑组装具体实现

    2024-07-21 02:08:01       31 阅读
  8. OpenPyXL 写入 Excel 文件

    2024-07-21 02:08:01       29 阅读