C++ 循环

计算机适合重复执行类似任务,C++提供了四种循环结构。包括while循环,条件为真时重复执行代码块;do/while循环,先执行代码再判断条件;for循环语法更简便;基于区间的for循环可方便迭代容器元素。还提及了break和continue的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

计算机擅长一遍遍地执行类似的任务。C++提供了四种循环结构:while循环、do/while 循环、for循环和基于区间的for循环。

1.while 循环

只要条件表达式的求值结果为true,while循环就会重复执行一个代码块。例如,下面的代码会输出“This is silly.”5次:

int i = 0;

while (i < 5)

{

    std::cout << "This is silly." << std::endl;

   ++i;

}

在循环中可使用break关键字立刻跳出循环并执行程序。关键字continue可用来返回到循环的顶部并对while表达式重新求值。这两种风格都不提倡使用,因为它们会使程序的执行产生无规则的跳转,应该慎用。唯一有必要使用break语句的环境就是在switch语句中。

2. do/while 循环

C++还有一个版本的while循环,叫做do/while 循环。其运行方式类似于while循环,但会首先执行代码,而判断是否需要执行的条件放在结尾处。如果想让代码块至少执行一次,并且根据某一条件确定是否执行多次,就可以使用这个循环版本。下面的代码尽管条件为false,仍会输出“This is silly.”一次。

int i = 100;

do{

    std::cout << "This is silly." <<std::endl;

   i++;

}while (i < 5)

3.for循环

for循环提供了另一种循环语法。任何for循环都可以转换为while循环,反之亦然。然而,for循环的语法一般更简便,因为可以看到循环的初始表达式、结束条件以及每次迭代结束后执行的语句。在下面的代码中,i 被初始化为0;只要 i 小于5,循环就会继续执行;每次迭代结束时,i 的值会增 1.这段代码的功能与while循环示例相同,但这段代码看起来更加清晰,因为在一行中显示了初始值、结束条件以及每次迭代结束后所执行的语句。

for( int i = 0; i < 5; ++i)

{

    std::cout << "This is silly. " << std::endl;

}

4.基于区间的for 循环

基于区间的for循环(Range-Based for Loop)是第4种循环,这种循环允许方便地迭代容器中的元素。这种循环类型可以用于C风格的数组、初始化列表,也可以用于返回迭代器的begin()和end()函数的类型。例如std::array 和其他所有STL容器。

下面的示例首先定义了一个包含4个整数的数组,此后“基于区间的for循环”遍历数组中的每个元素,输出每个值。为了再迭代元素时不制作副本,应使用本章后面讨论的引用变量:

std::array<int, 4> arr = {1,2,3,4};

for (int i : arr)

{

   std::cout << i <<std::endl;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值