首页 > 其他分享 >C语言大师之路:从零到王者/新手入门(4)循环语句

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

时间:2024-07-26 21:55:15浏览次数:15  
标签:语句 零到 int C语言 新手入门 while 循环 break 表达式

序(一些闲话)

  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
我是意疏 下次见!

标签:语句,零到,int,C语言,新手入门,while,循环,break,表达式
From: https://blog.csdn.net/2302_79751907/article/details/140648056

相关文章

  • c语言学习之输入输出--getchar、scanf、printf
    1.输入输出功能  (1).C语言本身并不提供输入输出功能。  使用的是c语言函数库中的"标准输入输出"函数 (2).c语言函数库提供的输入输出函数   getchar、putchar:操作一个字符 'a'  gets、puts:操作一个字符串 如"abcd"   scanf、printf:格式化......
  • C语言中的输入输出
    简单格式的输入输出简单的输出语句:printf语法printf"格式控制"输出表列举例:printf("%d,%f,%c",a,b,c);说明:由%和特定字符组成,如:%d、%c、%f等,是格式说明符,用于说明输出项目所采用的格式;基本的格式字符%d按十进制整型数据的实际长度输出。%c仅输出一个字符。......
  • C语言判断该数是否为素数
    素数判断方法:判断一个数是否为素数,即判断该数是否只能被1和自身整除,而不能被其他数整除。代码:#define_CRT_SECURE_NO_WARNINGS#include<stdio.h>intisPrime(intnum){if(num<=1){return0;}for(inti=2;i*i<=num;i++){......
  • C语言入门介绍
    文章目录一、源文件和头文件的介绍二、一个简单的C语言程序三、main函数的简单介绍1.main函数的注意事项2.main函数的返回类型四、库函数和printf函数1.库函数2.printf函数五、关键字六、字符与字符串1.字符和ASCII值2.字符串和\03.转义字符七、什么是语句1.空语句2.......
  • 二叉树及其存储实现C语言(附上源码)
    1.什么是二叉树        二叉树是一种特殊的树型结构,其特点是每个结点至多只有两棵子树(即二叉树不存在度大于二的结点),并且二叉树的子树有左右之分,次序不可颠倒【有序树】。 2.二叉树的定义二叉树T:一个有穷的结点集合。    -这个集合可以为空;    -......
  • c语言(7.26)
    今天学习了二级指针和多级指针,数组指针数组指针#include<stdio.h>intmain(){ //利用指针遍历数组 intarr[]={10,20,30,40,50}; intlen=sizeof(arr)/sizeof(int); //获取数组的指针 //1获取数组的首地址 int*p1=arr; //2循环 for(inti=0;i<len......
  • C语言:操作符详解
    文章目录一、操作符(一)操作符的类型1.算术操作符2.移位操作符(1)左移操作符:(1)右移操作符:3.位操作符(二进制)(1)不使用第三个变量,将a和b的值交换。(2)统计整形中二进制中含1的数量(3)编写代码将13二进制序列的第5位修改为1,然后再改回04.赋值操作符5.单目操作符6.关系操作符7.逻辑......
  • “Elasticsearch精英进阶:从零到精通的安装,从Kibana到Java API,全面掌握CRUD与DSL查询及
    目录引言1.初识elasticsearch1.1.认识和安装 1.1.1.安装elasticsearch 1.1.2.安装Kibana 1.2.倒排索引1.2.1.正向索引1.2.2.倒排索引1.2.3.正向和倒排1.3.基础概念1.3.1.文档和字段1.3.2.索引和映射1.3.3.mysql与elasticsearch1.4.1.安装IK分词器1.4.2.使......
  • 校园导航图(C语言)
    功能分析主要实现了一个校园导航图的相关功能,具体分析如下:图的数据结构定义:AdjMatrix结构体定义了图的邻接矩阵、地点名称、地点介绍、地点个数和路线个数等信息。功能函数:WriteFileAdjMatrix:将邻接矩阵写入文件。delOldAddress:删除旧地点。delOldPath:删除指定路线。......
  • C语言 —— 数组
    目录1.数组的概念2.一维数组2.1一维数组的创建2.2一维数组的初始化2.3一维数组的使用3.二维数组3.1二维数组的创建3.2二维数组的初始化3.2.1不完全初始化3.2.2完全初始化3.2.3按照行初始化3.2.4初始化可以省略行,但不能省略列3.3二维数组的使用1.数......