在编程中,循环结构是一种非常强大的工具,它允许我们重复执行一段代码,直到满足某个条件为止。C++ 提供了三种主要的循环结构:for 循环、while 循环和 do-while 循环。每种循环都有其特定的应用场景和语法规则。本文将详细介绍这三种循环结构,并通过示例输出的提示帮助初学者更好地理解和使用它们。
1. for 循环
for 循环是最常用的循环结构之一,特别适合已知循环次数的场景。其基本语法如下:
for (初始化表达式; 循环条件; 更新表达式) {
// 循环体
}
示例:打印 1 到 10 的数字。
#include <iostream>
using namespace std;
int main() {
for (int i = 1; i <= 10; ++i) {
cout << i << " ";
}
cout << endl; // 输出换行符,以便结果更清晰
// 示例输出提示:程序将输出 "1 2 3 4 5 6 7 8 9 10 "(每个数字后有一个空格),然后换行。
return 0;
}
2. while 循环
while 循环在循环开始前检查条件,如果条件为真,则执行循环体。其基本语法如下:
while (循环条件) {
// 循环体
}
示例:计算用户输入的正整数之和,直到用户输入 0 为止。
#include <iostream>
using namespace std;
int main() {
int sum = 0;
int num;
cout << "请输入正整数(输入0停止):";
while (cin >> num && num != 0) {
sum += num;
}
cout << "总和:" << sum << endl; // 输出计算得到的总和
// 示例输出提示:程序将输出用户输入的正整数之和,直到用户输入0为止。
return 0;
}
3. do-while 循环
do-while 循环至少执行一次循环体,然后在每次迭代后检查条件。如果条件为真,则继续执行循环体;如果为假,则退出循环。其基本语法如下:
do {
// 循环体
} while (循环条件);
示例:要求用户输入一个正整数,直到用户输入一个正数为止(即使第一次输入的是负数或零)。
#include <iostream>
using namespace std;
int main() {
int num;
cout << "请输入一个正整数:";
do {
cin >> num;
if (num <= 0) {
cout << "输入无效。请重新输入一个正整数:";
}
} while (num <= 0);
cout << "您输入的是:" << num << endl; // 输出用户最终输入的正整数
// 示例输出提示:程序将不断要求用户输入,直到用户输入一个正整数为止。
return 0;
}
注意事项:
- 循环变量:确保循环变量在循环过程中能正确地更新,以避免无限循环。
- 条件检查:仔细编写循环条件,确保在适当的时候退出循环。
- 嵌套循环:可以在一个循环内嵌套另一个循环,但要注意层次清晰,避免逻辑混乱。
- 效率:在可能的情况下,选择效率更高的循环结构。例如,已知循环次数时优先使用 for 循环。