09 C++ 中的循环(while循环、do-while循环、for循环及嵌套循环)
系列文章目录
09 C++ 中的循环(while循环、do-while循环、for循环及嵌套循环)
目录
系列文章目录
文章目录
前言
一、C++ 中的 while 循环
二、C++ for 循环
三、C++ do...while 循环
四、C++ 嵌套循环
总结
前言
C++中的循环指的是重复执行一段程序代码的结构。循环语句可以让程序重复执行某一段代码,直到满足某一条件,或者达到某一次数的执行次数。
常见的循环语句有while循环、do-while循环和for循环。循环语句是C++语言中基本的控制结构之一,可以帮助程序员编写高效、简洁的程序。下面让我们来逐个学习。
一、C++ 中的 while 循环
基本语法:
while(condition)
{
statement(s);
}
在这里,statement(s) 可以是一个单独的语句,也可以是几个语句组成的代码块。condition 可以是任意的表达式,当为任意非零值时都为真。当条件为真时执行循环。
当条件为假时,程序流将继续执行紧接着循环的下一条语句。
下面是一个例子:
#include <iostream>
using namespace std;
int main ()
{
// 局部变量声明
int a = 0;
// while 循环执行
while( a < 5 )
{
cout << "a 的值:" << a << endl;
a++;
}
return 0;
}
输出是:0,1,2,3,4
二、C++ for 循环
for ( init; condition; increment )
{
statement(s);
}
下面是 for 循环的控制流:
- init 会首先被执行,且只会执行一次。这一步允许您声明并初始化任何循环控制变量。您也可以不在这里写任何语句,只要有一个分号出现即可。
- 接下来,会判断 condition。如果为真,则执行循环主体。如果为假,则不执行循环主体,且控制流会跳转到紧接着 for 循环的下一条语句。
- 在执行完 for 循环主体后,控制流会跳回上面的 increment 语句。该语句允许您更新循环控制变量。该语句可以留空,只要在条件后有一个分号出现即可。
- 条件再次被判断。如果为真,则执行循环,这个过程会不断重复(循环主体,然后增加步值,再然后重新判断条件)。在条件变为假时,for 循环终止。
下面是一个示例代码:
#include <iostream>
using namespace std;
int main ()
{
// for 循环执行
for( int a = 0; a < 5; a++ )
{
cout << "a 的值:" << a << endl;
}
return 0;
}
输出是:0,1,2,3,4
三、C++ do...while 循环
基本语法如下:
do
{
statement(s);
}while( condition );
条件表达式出现在循环的尾部,所以循环中的 statement(s) 会在条件被测试之前至少执行一次。
如果条件为真,控制流会跳转回上面的 do,然后重新执行循环中的 statement(s)。这个过程会不断重复,直到给定条件变为假为止。
下面是一个示例代码:
#include <iostream>
using namespace std;
int main ()
{
// 局部变量声明
int a = 0;
// do 循环执行
do
{
cout << "a 的值:" << a << endl;
a ++;
}while( a < 5 );
return 0;
}
输出是:0,1,2,3,4
四、C++ 嵌套循环
嵌套循环很简单,顾名思义,一个循环内可以嵌套另一个循环。C++ 允许至少 256 个嵌套层次。
下面是一些基本语法:
# for循环
for ( init; condition; increment )
{
for ( init; condition; increment )
{
statement(s);
}
statement(s); // 可以继续加语句
}
# while循环
while(condition)
{
while(condition)
{
statement(s);
}
statement(s); // 可以继续加语句
}
# do while 循环
do
{
statement(s); // 可以继续加语句
do
{
statement(s);
}while( condition );
}while( condition );
下面是一个简单示例:
#include <iostream>
using namespace std;
int main()
{
// 循环输出乘法表
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= i; j++) {
cout << j << "*" << i << "=" << i * j << "\t";
}
cout << endl;
}
return 0;
}
输出结果如下:
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
总结
下面是使用C++ 中的循环注意事项总结:
-
循环条件的控制:循环条件必须在循环内部得到更新和控制,否则将可能出现无限循环的情况。
-
循环范围的控制:循环体内的代码必须正确、清晰地控制循环范围。特别是在嵌套循环中,需要清楚地记住每个循环的范围。
-
循环体的顺序:在循环体内,语句的顺序和执行顺序必须清楚明确,尤其是涉及到多个语句的组合和顺序。
-
循环终止条件:循环终止条件必须正确地判断和控制,避免出现死循环或过早退出循环的情况。
-
循环控制语句的使用:循环控制语句包括 break、continue、return等,必须正确地使用,并注意在嵌套循环中的作用和影响。
-
循环计数器的初始化和更新:循环计数器的初始化必须清晰明确,更新时必须符合循环条件,避免引发错误或死循环。
-
循环的嵌套:在涉及到多个循环的嵌套时,必须注意各个循环之间的关系和作用,并严格控制每个循环的范围和变量的作用域。
-
循环的效率和优化:在需要进行大量循环计算的程序中,必须注意循环的效率和优化,尽可能减少循环次数和不必要的计算。