- C++
循环结构
- 2024-12-13 9:24:30 @
C++循环结构教程
一、引言
在 C++编程中,循环结构允许我们重复执行一段代码,直到满足特定的条件。这对于处理重复性任务、遍历数据集合或进行迭代计算等操作非常有用。本教程将介绍 C++中的三种主要循环结构:for
循环、while
循环和 do-while
循环,以及它们的使用方法和应用场景。
二、for 循环
(一)基本的 for 循环
for
循环通常用于已知循环次数的情况,其语法如下:
#include <bits/stdc++.h>
using namespace std;
int main() {
// 从 0 到 4 进行循环
for (int i = 0; i < 5; ++i) {
cout << i << " ";
}
cout << endl;
return 0;
}
在上述代码中,for
循环的三个部分:
int i = 0
:初始化部分,定义并初始化循环变量i
为 0。i < 5
:条件部分,只要该条件为真,循环将继续执行。++i
:迭代部分,每次循环结束后,i
的值将增加 1。
(二)使用 for 循环遍历数组
for
循环可以方便地遍历数组元素。
#include <bits/stdc++.h>
using namespace std;
int main() {
int arr[] = {1, 2, 3, 4, 5};
int size = sizeof(arr) / sizeof(arr[0]);
// 遍历数组元素
for (int i = 0; i < size; ++i) {
cout << arr[i] << " ";
}
cout << endl;
return 0;
}
这里,sizeof(arr) / sizeof(arr[0])
计算数组的元素数量。循环变量 i
作为数组的索引,从 0 开始,依次访问数组的每个元素。
(三)for-each 循环(C++11 及以上)
对于 C++11 及以上的标准,可以使用基于范围的 for 循环(for-each 循环)更简洁地遍历数组或容器。
#include <bits/stdc++.h>
using namespace std;
int main() {
int arr[] = {1, 2, 3, 4, 5};
// 使用 for-each 循环遍历数组
for (int num : arr) {
cout << num << " ";
}
cout << endl;
return 0;
}
在这个 for-each
循环中,num
依次代表数组 arr
中的每个元素,无需使用索引。
三、while 循环
(一)基本的 while 循环
while
循环在条件为真时重复执行代码,适用于不确定循环次数的情况。
#include <bits/stdc++.h>
using namespace std;
int main() {
int i = 0;
// 当 i 小于 5 时,执行循环
while (i < 5) {
cout << i << " ";
++i;
}
cout << endl;
return 0;
}
只要 i < 5
这个条件成立,循环将继续执行,每次循环后 i
的值会增加 1。
(二)使用 while 循环读取输入
可以使用 while
循环读取输入,直到满足特定条件。
#include <bits/stdc++.h>
using namespace std;
int main() {
int num;
// 不断读取输入,直到输入为 0
cout << "请输入数字(输入 0 结束):" << endl;
cin >> num;
while (num!= 0) {
cout << "输入的数字是:" << num << endl;
cin >> num;
}
return 0;
}
此代码将持续读取用户输入的数字并输出,直到用户输入 0。
四、do-while 循环
(一)基本的 do-while 循环
do-while
循环至少会执行一次,因为它先执行代码块,再检查条件。
#include <bits/stdc++.h>
using namespace std;
int main() {
int i = 0;
// 先执行代码块,再检查条件
do {
cout << i << " ";
++i;
} while (i < 5);
cout << endl;
return 0;
}
代码块先执行一次,然后检查 i < 5
的条件,若为真,则继续循环。
(二)使用 do-while 循环进行菜单操作
do-while
循环可用于实现菜单操作,确保菜单至少显示一次。
#include <bits/stdc++.h>
using namespace std;
int main() {
int choice;
do {
cout << "1. 显示信息" << endl;
cout << "2. 退出" << endl;
cout << "请输入你的选择:";
cin >> choice;
switch (choice) {
case 1:
cout << "显示信息..." << endl;
break;
case 2:
cout << "退出程序" << endl;
break;
default:
cout << "无效的选择,请重新输入。" << endl;
}
} while (choice!= 2);
return 0;
}
这个 do-while
循环将持续显示菜单并处理用户的选择,直到用户选择退出(输入 2)。
五、循环控制语句
(一)break 语句
break
语句可以提前终止循环。
#include <bits/stdc++.h>
using namespace std;
int main() {
for (int i = 0; i < 10; ++i) {
if (i == 5) {
break; // 当 i 等于 5 时,终止循环
}
cout << i << " ";
}
cout << endl;
return 0;
}
当 i
等于 5 时,break
语句将终止 for
循环。
(二)continue 语句
continue
语句可以跳过本次循环的剩余部分,直接进入下一次迭代。
#include <bits/stdc++.h>
using namespace std;
int main() {
for (int i = 0; i < 10; ++i) {
if (i % 2 == 0) {
continue; // 跳过偶数
}
cout << i << " ";
}
cout << endl;
return 0;
}
在这个例子中,当 i
是偶数时,continue
语句将跳过 cout << i << " ";
,直接开始下一次迭代。
六、总结
通过本教程,我们学习了 C++中的三种主要循环结构:for
循环、while
循环和 do-while
循环,以及循环控制语句 break
和 continue
。这些循环结构和控制语句可以帮助你实现各种重复操作和迭代计算。根据不同的任务需求,选择合适的循环结构和控制语句,可以使程序更简洁、高效。在实际编程中,熟练掌握这些循环结构对于解决各种复杂问题至关重要。如果还有其他问题或需要进一步的帮助,请随时联系我。
这个文档详细介绍了 C++中的循环结构,包括它们的使用方法、应用场景和相应的代码示例。希望它能帮助你更好地理解和运用 C++的循环结构,写出更强大的程序。