C++ for 循环
C++ 循环
在本教程中,我们将通过一些示例了解 C++ for 循环及其工作原理。
在计算机编程中,循环用于重复一段代码。
例如,假设我们想要显示一条消息 100 次。那么我们可以使用循环而不是写 100 次 print 语句。
那只是一个简单的例子;通过有效地利用循环,我们可以在程序中实现更高的效率和复杂性。
C++中有3种循环。
for
循环while
循环do...while
循环
本教程重点介绍 C++ for
环形。我们将在接下来的教程中了解其他类型的循环。
C++ for 循环
for循环的语法是:
for (initialization; condition; update) {
// body of-loop
}
在这里,
initialization
- 初始化变量并且只执行一次condition
- 如果true
,for
的主体 循环被执行
如果false
, for 循环终止update
- 更新初始化变量的值并再次检查条件
了解更多关于 conditions
,请查看我们关于 C++ 关系和逻辑运算符的教程。
C++ for 循环流程图
<图>
示例 1:打印从 1 到 5 的数字
#include <iostream>
using namespace std;
int main() {
for (int i = 1; i <= 5; ++i) {
cout << i << " ";
}
return 0;
}
输出
1 2 3 4 5
这是这个程序的工作原理
迭代 | 变量 | i <=5 | 动作 |
---|---|---|---|
第一个 | i = 1 | true |
1
被打印。 i 增加到 2 . |
第二次 | i = 2 | true |
2
被打印。 i 增加到 3 . |
第三次 | i = 3 | true |
3
被打印。 i 增加到 4 . |
第四次 | i = 4 | true |
4
被打印。 i 增加到 5 . |
第 5 次 | i = 5 | true |
5
被打印。 i 增加到 6 . |
第 6 次 | i = 6 | false | 循环终止 |
示例 2:显示一个文本 5 次
// C++ Program to display a text 5 times
#include <iostream>
using namespace std;
int main() {
for (int i = 1; i <= 5; ++i) {
cout << "Hello World! " << endl;
}
return 0;
}
输出
Hello World! Hello World! Hello World! Hello World! Hello World!
这是这个程序的工作原理
迭代 | 变量 | i <=5 | 动作 |
---|---|---|---|
第一个 | i = 1 | true |
你好世界!
被打印并且 i 增加到 2 . |
第二次 | i = 2 | true |
你好世界!
被打印和 i 增加到 3 . |
第三次 | i = 3 | true |
你好世界!
被打印和 i 增加到 4 . |
第四次 | i = 4 | true |
你好世界!
被打印和 i 增加到 5 . |
第 5 次 | i = 5 | true |
你好世界!
被打印和 i 增加到 6 . |
第 6 次 | i = 6 | false | 循环终止 |
例3:求前n个自然数之和
// C++ program to find the sum of first n natural numbers
// positive integers such as 1,2,3,...n are known as natural numbers
#include <iostream>
using namespace std;
int main() {
int num, sum;
sum = 0;
cout << "Enter a positive integer: ";
cin >> num;
for (int i = 1; i <= num; ++i) {
sum += i;
}
cout << "Sum = " << sum << endl;
return 0;
}
输出
Enter a positive integer: 10 Sum = 55
在上面的例子中,我们有两个变量 num 和 sum . 总和 变量用 0 赋值 和 num 变量被赋予用户提供的值。
请注意,我们使用了 for
循环。
for(int i = 1; i <= num; ++i)
在这里,
int i = 1
:初始化 i 变量i <= num
:只要 i 就运行循环 小于或等于 num++i
:增加 i 在每次迭代中变量 1
当 i 变成 11
, condition
是 false
和 sum 将等于 0 + 1 + 2 + ... + 10
.
基于范围的循环
在 C++11 中,一个新的基于范围的 for
引入循环以处理诸如 arrays 之类的集合 和向量 .它的语法是:
for (variable : collection) {
// body of loop
}
在这里,对于 collection 中的每个值 ,执行for循环并将值分配给变量 .
示例 4:基于范围的 for 循环
#include <iostream>
using namespace std;
int main() {
int num_array[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
for (int n : num_array) {
cout << n << " ";
}
return 0;
}
输出
1 2 3 4 5 6 7 8 9 10
在上面的程序中,我们声明并初始化了一个int
名为 num_array 的数组 .它有 10 个项目。
在这里,我们使用了基于范围的 for
循环访问数组中的所有项。
C++ 无限循环
如果 condition
在 for
循环总是 true
,它永远运行(直到内存已满)。例如,
// infinite for loop
for(int i = 1; i > 0; i++) {
// block of code
}
在上述程序中,condition
总是 true
然后它将无限次运行代码。
查看这些示例以了解更多信息:
- 计算自然数和的 C++ 程序
- 查找阶乘的 C++ 程序
- 生成乘法表的 C++ 程序
在下一个教程中,我们将学习 while
和 do...while
循环。
C语言