个人网站备案信息填写今日百度小说排行榜风云榜
循环结构的作用
循环结构用于重复执行某一代码块,直到满足特定条件后退出循环。
C++ 提供了以下三种循环结构:
for
循环(确定次数的循环)while
循环(条件控制的循环)do-while
循环(至少执行一次的循环)
此外,C++ 还提供了 break
和 continue
语句来控制循环流程。
一、for
循环
作用:
for
循环适用于确定循环次数的情况。
语法:
for (初始化; 条件; 更新) {// 循环体
}
注意:
- 初始化:在for循环开始前执行一次,且仅执行一次(如
int i = 0;
)。 - 条件:每次循环开始前检查,若为
true
则执行循环体,否则终止循环。 - 更新:每次循环结束后执行(如
i++
)。
示例 :计算 1 到 100 的累加和
#include <iostream>
using namespace std;int main() {int sum = 0;for (int i = 1; i <= 100; i++) {sum += i;}cout << "sum = " << sum << endl;system("pause");return 0;
}
二、 while
循环
作用:
while
循环适用于循环次数不确定,但需要根据条件控制循环的情况。
语法:
while (条件) {// 循环体
}
注意:
- 条件:每次循环开始前检查,若为
true
则执行循环体,否则终止循环。
示例:输入一个正数,直到用户输入 0 或负数 退出
#include <iostream>
using namespace std;int main() {int num;cout << "输入一个正数(输入 0或负数 退出):";cin >> num;while (num > 0) {cout << "你输入的正数是:" << num << endl;cout << "输入一个正数(输入 0或负数 退出):";cin >> num;}system("pause");return 0;
}
三、 do-while
循环
作用:
do-while
循环至少执行一次,然后根据条件决定是否继续循环。
语法:
do {// 循环体
} while (条件);
注意:
- 先执行一次循环体,然后检查
while
条件,若为true
则继续循环。
示例:至少执行一次的用户输入
#include <iostream>
using namespace std;int main() {int num;do {cout << "输入一个正数(输入 0或负数 退出):";cin >> num;cout << "你输入的数是:" << num << endl;} while (num > 0);system("pause");return 0;
}
四、三种循环的对比
比较:
循环类型 | 适用场景 | 是否先判断条件 | 是否至少执行一次 |
---|---|---|---|
for | 循环次数确定(如遍历数组) | ✅ | ❌ |
while | 循环次数不确定,但可能不执行 | ✅ | ❌ |
do-while | 至少执行一次,然后决定是否继续 | ❌ | ✅ |
示例:
#include <iostream>
using namespace std;int main() {int i = 1;// 输出1~3// for 循环cout << "for循环:";for (i = 1; i <= 3; i++) {cout << i << " ";}cout << endl;// while 循环i = 1;cout << "while循环:";while (i <= 3) {cout << i << " ";i++;}cout << endl;// do-while 循环i = 1;cout << "do-while循环:";do {cout << i << " ";i++;} while (i <= 3);cout << endl;system("pause");return 0;
}
五、 break
语句
作用:
用于提前终止循环。
示例:用户输入 0
或负数 时终止循环
#include <iostream>
using namespace std;int main() {int num;while (true) { // 无限循环cout << "输入一个正数(输入 0或负数 退出):";cin >> num;if (num <= 0) {break; // 终止循环}cout << "你输入的正数是:" << num << endl;}system("pause");return 0;
}
六、 continue
语句
作用:
用于跳过当前循环的剩余部分,直接进入下一次循环。
示例:打印 1 到 10,但跳过 5
#include <iostream>
using namespace std;int main() {// 输出1~10,但跳过5for (int i = 1; i <= 10; i++) {if (i == 5) {continue; // 跳过 5}cout << i << " ";}cout << endl;system("pause");return 0;
}
七、 其他循环
(1)嵌套循环
作用:
循环结构可以嵌套使用,例如输出乘法表:
示例:九九乘法表
#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;}system("pause");return 0;
}
(2)无限循环
作用:
若循环条件始终为 true
,则进入无限循环。
示例:for
实现无限循环
#include <iostream>
using namespace std;int main() {for (;;) // 等价于 while(true){cout << "无限循环..." << endl;}system("pause");return 0;
}
与以下代码等价:
#include <iostream>
using namespace std;int main() {while (true) {cout << "无限循环..." << endl;}system("pause");return 0;
}