【012】细数C++循环控制:for、while、do-while,看看你掌握了多少?

引言


💡 作者简介:专注分享高性能服务器后台开发技术知识,涵盖多个领域,包括C/C++、Linux、网络协议、设计模式、中间件、云原生、数据库、分布式架构等。目标是通过理论与代码实践的结合,让世界上看似难以掌握的技术变得易于理解与掌握。公众号《Lion 莱恩呀》。
👉
🎖️ CSDN实力新星、专家博主,阿里云博客专家、华为云云享专家
👉
🔔 专栏介绍:从零到c++精通的学习之路。内容包括C++基础编程、中级编程、高级编程;掌握各个知识点。
👉
🔔 专栏地址:C++从零开始到精通
👉
🔔 博客主页:https://blog.csdn.net/Long_xu


🔔 上一篇:【011】C++条件控制语句全解析:if、switch一网打尽!
🔔 下一篇:【013】C++数组之一维数值数组和二维数值数组

一、循环控制语句 for

1.1、for 循环语句

C++中的for循环语句是一种重复执行某段代码块的结构化控制语句。通常用于对一定次数或范围内的操作进行循环处理。

for循环的基本语法如下:

for (初始化表达式; 条件表达式; 更新表达式) {
    // 待执行的代码块
}

其中,初始化表达式用于定义并初始化一个计数器变量,条件表达式用于判断是否满足循环条件,更新表达式则在每次循环结束后更新计数器变量。在执行完初始化表达式后,程序将检查条件表达式。如果条件为真,则会执行代码块中的内容;否则跳出循环。

例如,使用for循环输出数字1到5:

#include <iostream>
using namespace std;

int main() {
    for (int i = 1; i <= 5; i++) {
        cout << i << endl;
    }
    return 0;
}

在上面的示例中,定义了一个整型变量i,并将其赋值为1。然后设置了一个条件:只要i小于等于5就继续执行循环。每次循环完成之后,i都会自增1,直到i大于5为止。

需要注意的是,在使用for循环时要确保计数器变量不会无限增长或减少而导致死循环。因此,循环条件表达式中的计数器变量应该逐步趋近于某个限定值,并在一定条件下停止循环。

1.2、break和continue

break是跳出当前的循环。示例:

// 只加到了49
int i=0;sum=0;
for(i=0;i<=100;i++)
{
	if(i==50)
		break;
	sum+=i;
}

continue是进入下一个循环。示例:

// 跳过i=50那一次
int i=0,sum=0;
for(i=0;i<=100;i++)
{
	if(i==50)
		continue;
	sum+=i;
}

1.3、for循环的嵌套

在C++中,for循环的嵌套for循环是非常常见的编程技巧。它允许我们在内部循环中遍历一个数据结构,并且对于每个元素,在外部循环中执行某些操作。

例如,使用嵌套for循环来打印乘法表:

#include <iostream>

int main()
{
    for (int i = 1; i <= 10; ++i)
    {
        for (int j = 1; j <= 10; ++j)
        {
            std::cout << i * j << "\t";
        }
        std::cout << std::endl;
    }

    return 0;
}

在上面的程序中,有两个嵌套的for循环。外部循环控制行数,内部循环控制列数。每次内部循环迭代时,我们将当前行和列相乘,并打印到屏幕上。
在这里插入图片描述

需要注意的是,在使用嵌套for循环时要小心不要陷入死循环中。确保设置了正确的终止条件以及每次迭代都能正常退出。此外,如果多层嵌套过多可能会影响代码性能,请尽量减少不必要的嵌套。

二、循环控制语句while

2.1、while循环语句

当需要重复执行某些语句块时,可以使用while循环语句。它的基本语法如下:

while (条件表达式)
{
   // 待执行的语句块
}

while循环中,当条件表达式为true时,就会一直执行待执行的语句块,直到条件表达式变为false或者程序被强制结束。

例如,使用while循环来计算1到10之间整数的和:

#include <iostream>
using namespace std;

int main()
{
    int i = 1;
    int sum = 0;

    while(i <= 10)
    {
        sum += i;
        i++;
    }

    cout << "The sum of integers from 1 to 10 is: " << sum << endl;

    return 0;
}

在上述代码中,变量i用于迭代值,在每次迭代时都会递增。变量sum用于保存所求和。当i小于等于10时,while循环将会继续执行,并且在每次迭代中将当前值加入到sum中。最后输出结果。

注意:如果条件表达式初始值为false,则不会进入循环体;如果没有更新循环控制变量(比如忘记了i++),则可能会导致无限循环,程序陷入死循环状态。因此,在编写代码时请务必注意以上问题并进行正确的处理。

2.2、break和continue

break是跳出当前的循环。示例:

// 只加到了49
int i=0;sum=0;
while(i<=100)
{
	if(i==50)
		break;
	sum+=i;
	i++}

continue是进入下一个循环。示例:

// 在i=50时会进入死循环
int i=0;sum=0;
while(i<=100)
{
	if(i==50)
		break;
	sum+=i;
	i++}

可以改成:

// 跳过50
int i=0;sum=0;
while(i<=100)
{
	sum+=i;
	i++if(i==50)
		break;
	
}

2.3、do…while()循环语句

do-while循环与while循环类似,不同之处是它会先执行一遍待执行的语句块再进行条件判断。其基本语法如下:

do
{
    // 待执行的语句块
}
while (条件表达式);

do-while循环中,当条件表达式为true时,就会一直执行待执行的语句块,直到条件表达式变为false或者程序被强制结束。

三、总结

C++提供了三种循环控制语句:for循环、while循环和do-while循环。它们的主要区别在于条件判断的位置和执行顺序。

  1. for循环。for循环通常用于已知重复次数的情况下,在for循环中,初始化表达式只会在第一次迭代前执行一次,更新表达式则在每次迭代后执行一次。只有当条件表达式为true时,才会进入待执行的语句块。

  2. while循环。while循环通常用于不确定重复次数但需要先进行判断的情况下,在while循环中,当条件表达式为true时,就会一直执行待执行的语句块,直到条件表达式变为false或者程序被强制结束。

除了三种基本循环控制语句外,C++还提供了两个关键字用于控制循环:breakcontinuebreak关键字可以跳出当前循环,而continue关键字则可以跳过本次迭代并继续进行下一次迭代。

在这里插入图片描述

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Lion Long

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值