C++学习系列(2):C++控制流语句
1. 前言
在 C++学习系列(1) 中,我们学习了 C++ 的基础概念、变量与数据类型,并编写了第一个 C++ 程序。本篇文章将深入 C++ 的控制流语句,包括:
- 条件语句(
if-else、switch) - 循环语句(
for、while、do-while) - 跳转语句(
break、continue、goto)
掌握控制流语句可以让程序更具逻辑性,实现各种功能,让我们开始吧!🚀
2. 条件语句(if-else)
在程序运行过程中,我们经常需要根据不同的条件执行不同的代码逻辑,if-else 语句可以实现这一点。
if-else 语句基本用法:
#include <iostream>
int main() {
int score;
std::cout << "请输入你的成绩: ";
std::cin >> score;
if (score >= 90) {
std::cout << "成绩优秀!" << std::endl;
} else if (score >= 60) {
std::cout << "成绩合格!" << std::endl;
} else {
std::cout << "成绩不及格,请加油!" << std::endl;
}
return 0;
}
示例运行:
请输入你的成绩: 85
成绩合格!
if-else 语句结构
if语句判断条件是否满足,如果true,执行{}内的代码块。else if用于添加额外的判断条件(可选)。else语句在所有if条件都不满足时执行(可选)。
3. 多分支选择(switch-case)
当需要根据一个变量的多个取值执行不同逻辑时,switch 语句比 if-else 更清晰。
switch 语句示例:
#include <iostream>
int main() {
int day;
std::cout << "请输入星期几(1-7): ";
std::cin >> day;
switch (day) {
case 1: std::cout << "今天是星期一" << std::endl; break;
case 2: std::cout << "今天是星期二" << std::endl; break;
case 3: std::cout << "今天是星期三" << std::endl; break;
case 4: std::cout << "今天是星期四" << std::endl; break;
case 5: std::cout << "今天是星期五" << std::endl; break;
case 6: std::cout << "今天是星期六" << std::endl; break;
case 7: std::cout << "今天是星期日" << std::endl; break;
default: std::cout << "输入无效,请输入1-7" << std::endl;
}
return 0;
}
注意事项
case语句后面必须跟:。break语句用于终止switch,防止“穿透”执行下一个case。default语句用于处理所有未匹配的情况(可选)。
4. 循环语句(for, while, do-while)
4.1 for 循环
for 适用于已知循环次数的情况:
#include <iostream>
int main() {
for (int i = 1; i <= 5; i++) {
std::cout << "第 " << i << " 次循环" << std::endl;
}
return 0;
}
运行结果:
第 1 次循环
第 2 次循环
第 3 次循环
第 4 次循环
第 5 次循环
4.2 while 循环
while 适用于循环次数未知,但满足某个条件时继续执行:
#include <iostream>
int main() {
int num = 1;
while (num <= 5) {
std::cout << "当前数字: " << num << std::endl;
num++;
}
return 0;
}
4.3 do-while 循环
do-while 先执行一次循环体,再判断条件是否继续循环:
#include <iostream>
int main() {
int num = 1;
do {
std::cout << "当前数字: " << num << std::endl;
num++;
} while (num <= 5);
return 0;
}
📌 区别: do-while 至少执行一次,while 可能一次都不执行。
5. 跳转语句(break、continue、goto)
5.1 break 语句
break 立即终止当前循环:
#include <iostream>
int main() {
for (int i = 1; i <= 5; i++) {
if (i == 3) break;
std::cout << "当前数字: " << i << std::endl;
}
return 0;
}
运行结果:
当前数字: 1
当前数字: 2
🚀 break 在 i == 3 时终止循环。
5.2 continue 语句
continue 跳过当前循环的剩余部分,直接进入下一次循环:
#include <iostream>
int main() {
for (int i = 1; i <= 5; i++) {
if (i == 3) continue;
std::cout << "当前数字: " << i << std::endl;
}
return 0;
}
运行结果:
当前数字: 1
当前数字: 2
当前数字: 4
当前数字: 5
🚀 continue 使 i == 3 时跳过 std::cout 语句。
5.3 goto 语句
goto 用于无条件跳转,但通常不建议使用:
#include <iostream>
int main() {
int num = 1;
start:
if (num > 5) return 0;
std::cout << "当前数字: " << num << std::endl;
num++;
goto start;
}
⚠️ 建议尽量避免 goto,因为它会降低代码的可读性和可维护性。
6. 小结与展望
在本篇博客中,我们学习了:
✅ if-else 条件语句
✅ switch-case 多分支选择
✅ for、while、do-while 循环
✅ break、continue、goto 跳转语句
在下一篇 C++学习系列(3) 中,我们将深入 C++ 的函数与作用域,敬请期待!💡
💡 如果你喜欢这篇文章,欢迎点赞、收藏,并关注本系列!
1385

被折叠的 条评论
为什么被折叠?



