在编程中,我们经常需要重复执行某些操作,比如:
这时候就需要用到循环语句。C++ 提供了三种基本循环结构:for循环、while循环和do-while循环。本文将通过大量图解和示例,带你彻底掌握循环的使用方法。
1 for(初始化表达式; 条件表达式; 更新表达式) {
2 循环体语句;
3 }
#include
using namespace std;
int main() {
int sum = 0;
for(int i = 1; i <= 100; i++) { // i从1到100
sum += i; // 累加当前i的值
}
cout << "1-100的和为:" << sum << endl; // 输出5050
return 0;
}
int i = 1;
for(; i <= 10; i++) { ... }
for(int i=0, j=10; i
初始化语句;
while(条件表达式) {
循环体语句;
更新语句;
}
#include
using namespace std;
int main() {
int num = 1;
while(num <= 5) {
cout << num << "的平方是:" << num * num << endl;
num++; // 关键:必须包含更新条件,否则会无限循环
}
return 0;
}
while(userInput != 'q') { // 直到用户输入q才退出
获取用户输入;
}
do {
循环体语句;
更新语句;
} while(条件表达式); // 注意末尾的分号!
#include
#include
using namespace std;
int main() {
string password;
do {
cout << "请输入密码(至少6位):";
cin >> password;
} while(password.length() < 6); // 密码不合法时继续循环
cout << "密码设置成功!" << endl;
return 0;
}
特性 |
while 循环 |
do-while 循环 |
执行顺序 |
先判断后执行 |
先执行后判断 |
最少执行次数 |
0 次 |
1 次 |
for(int i=1; i<=10; i++) {
if(i % 2 == 0) {
cout << "第一个偶数是:" << i << endl; // 输出2
break; // 找到后立即退出循环
}
}
for(int i=1; i<=10; i++) {
if(i % 2 == 0) {
continue; // 遇到偶数就跳过本次循环
}
cout << i << " "; // 输出1 3 5 7 9
}
一个循环体内包含另一个循环,称为嵌套循环。常见场景:
#include
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; // 每行结束换行
}
return 0;
}
外层循环每执行一次,内层循环会完整执行一轮。总执行次数 = 外层次数 × 内层次数。
题目:用三种循环实现 1-100 的奇数和
int sum = 0;
for(int i=1; i<=100; i+=2) {
sum += i;
}
int sum = 0, i=1;
while(i <= 100) {
sum += i;
i += 2;
}
int sum = 0, i=1;
do {
sum += i;
i += 2;
} while(i <= 100);
三种循环的核心区别:
循环类型 |
执行顺序 |
适用场景 |
for 循环 |
先判断后执行 |
计数循环(已知次数) |
while 循环 |
先判断后执行 |
条件循环(未知次数) |
do-while |
先执行后判断 |
至少执行一次的循环 |
掌握循环语句是编写高效程序的基础,建议通过以下方式巩固:
通过反复练习,你会对循环的使用越来越得心应手!如果有任何疑问,欢迎在评论区留言讨论~
求个三连!!!