当我们需要重复执行一个语句块时,就会使用编程中的循环。例如:假设我们要打印 10 次“Hello World”。这可以通过两种方式完成,如下所示:
输出:
循环
for 循环是一种重复控制结构,它允许我们编写一个执行特定次数的循环。该循环使我们能够在一行中一起执行 n 个步骤。
语法:
在 for 循环中,使用循环变量来控制循环。首先将此循环变量初始化为某个值,然后检查此变量是否小于或大于计数器值。如果语句为真,则执行循环体并更新循环变量。重复步骤直到退出条件出现。
例子:
输出:
流程图:
例子:
输出:
注意:注意循环末尾的半冒号(“;”)。
流程图:
例子:
输出:
迭代法
执行此操作的一种迭代方法是编写 printf() 语句 10 次。// C++ program to illustrate need of loops
#include <iostream>
using namespace std;
int main()
{
cout << "Hello Worldn";
cout << "Hello Worldn";
cout << "Hello Worldn";
cout << "Hello Worldn";
cout << "Hello Worldn";
cout << "Hello Worldn";
cout << "Hello Worldn";
cout << "Hello Worldn";
cout << "Hello Worldn";
cout << "Hello Worldn";
return 0;
}
Hello World Hello World Hello World Hello World Hello World Hello World Hello World Hello World Hello World Hello World
使用循环
在Loop中,语句只需要编写一次,循环将执行10次,如下所示。 在计算机编程中,循环是重复的指令序列,直到达到特定条件。- 完成一项操作,例如获取一项数据并对其进行更改,然后检查某些条件,例如计数器是否达到规定的数量。
- 计数器未达到:如果计数器未达到所需数量,则序列中的下一条指令返回到序列中的第一条指令并重复执行。
- 计数器到达:如果条件已经达到,下一条指令“落入”到下一条顺序指令或分支到循环外。
- 入口控制循环:在这种类型的循环中,测试条件在进入循环体之前进行测试。For 循环和While 循环是入口控制循环。
- 退出控制循环:在这种类型的循环中,测试条件在循环体的末尾进行测试或评估。因此,循环体将至少执行一次,而不管测试条件是真还是假。do - while 循环是退出控制循环。

for (initialization expr; test expr; update expr)
{
// body of the loop
// statements we want to execute
}
- 初始化表达式:在这个表达式中,我们必须将循环计数器初始化为某个值。例如:int i=1;
- 测试表达式:在这个表达式中,我们必须测试条件。如果条件评估为真,那么我们将执行循环体并转到更新表达式,否则我们将退出 for 循环。例如:i <= 10;
- 更新表达式:执行循环体后,此表达式将循环变量递增/递减某个值。例如:i++;

// C++ program to illustrate for loop
#include <iostream>
using namespace std;
int main()
{
for (int i = 1; i <= 10; i++)
{
cout << "Hello Worldn";
}
return 0;
}
Hello World Hello World Hello World Hello World Hello World Hello World Hello World Hello World Hello World Hello World
While 循环
在研究for 循环时,我们已经看到迭代次数是事先知道的,即循环体需要执行的次数是我们已知的。while 循环用于我们事先不知道循环的确切迭代次数的情况。根据测试条件终止循环执行。 语法: 我们已经说过,一个循环主要由三个语句组成——初始化表达式、测试表达式、更新表达式。三个循环的语法——for、while 和 do while 主要在这三个语句的位置上有所不同。initialization expression;
while (test_expression)
{
// statements
update_expression;
}

// C++ program to illustrate while loop
#include <iostream>
using namespace std;
int main()
{
// initialization expression
int i = 1;
// test expression
while (i < 6)
{
cout << "Hello Worldn";
// update expression
i++;
}
return 0;
}
Hello World Hello World Hello World Hello World Hello World
do while循环
在 do while 循环中,循环执行也会根据测试条件终止。do while 循环和while 循环的主要区别在于do while 循环中的条件在循环体的末尾进行测试,即do while 循环是退出控制的,而其他两个循环是入口控制的循环。 注意:在 do while 循环中,无论测试条件如何,循环体都将至少执行一次。 语法:initialization expression;
do
{
// statements
update_expression;
} while (test_expression);

// C++ program to illustrate do-while loop
#include <iostream>
using namespace std;
int main()
{
int i = 2; // Initialization expression
do
{
// loop body
cout << "Hello Worldn";
// update expression
i++;
} while (i < 1); // test expression
return 0;
}
输出:
在上述程序中,测试条件 (i<1) 评估为假。但是当循环退出时——控制循环体将执行一次。
那么无限循环呢?
无限循环(有时称为无限循环)是一段缺少功能出口的代码,因此它会无限重复。当条件总是计算为真时,就会发生无限循环。通常,这是一个错误。
Hello World
// C++ program to demonstrate infinite loops
// using for and while
// Uncomment the sections to see the output
#include <iostream>
using namespace std;
int main ()
{
int i;
// This is an infinite for loop as the condition
// expression is blank
for ( ; ; )
{
cout << "This loop will run forever.n";
}
// This is an infinite for loop as the condition
// given in while loop will keep repeating infinitely
/*
while (i != 0)
{
i-- ;
cout << "This loop will run forever.n";
}
*/
// This is an infinite for loop as the condition
// given in while loop is "true"
/*
while (true)
{
cout << "This loop will run forever.n";
}
*/
}
This loop will run forever. This loop will run forever. ...................
要点:
- 当预先知道迭代次数时使用for循环,即需要执行循环体的次数是已知的。
- 在不知道确切的迭代次数但知道循环终止条件的情况下使用 while 循环。
- 如果代码需要像在菜单驱动程序中一样至少执行一次,请使用 do while 循环