控制流程
条件语句
条件语句用于根据不同的条件执行不同的代码块。C++提供了if、else if、else等条件语句。
// if-else语句示例
int score = 85;
if (score >= 90) {
std::cout << "优秀" << std::endl;
} else if (score >= 80) {
std::cout << "良好" << std::endl;
} else if (score >= 60) {
std::cout << "及格" << std::endl;
} else {
std::cout << "不及格" << std::endl;
}
int score = 85;
if (score >= 90) {
std::cout << "优秀" << std::endl;
} else if (score >= 80) {
std::cout << "良好" << std::endl;
} else if (score >= 60) {
std::cout << "及格" << std::endl;
} else {
std::cout << "不及格" << std::endl;
}
switch语句
switch语句用于根据变量的不同值执行不同的代码块,特别适合处理多个固定值的判断。
// switch语句示例
int day = 3;
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;
default:
std::cout << "周末" << std::endl;
}
int day = 3;
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;
default:
std::cout << "周末" << std::endl;
}
for循环
for循环用于重复执行一段代码,通常用于已知循环次数的情况。
// for循环示例
// 打印1到10的数字
for (int i = 1; i <= 10; i++) {
std::cout << i << " ";
}
std::cout << std::endl;
// 计算1到100的和
int sum = 0;
for (int i = 1; i <= 100; i++) {
sum += i;
}
std::cout << "1到100的和是:" << sum << std::endl;
// 打印1到10的数字
for (int i = 1; i <= 10; i++) {
std::cout << i << " ";
}
std::cout << std::endl;
// 计算1到100的和
int sum = 0;
for (int i = 1; i <= 100; i++) {
sum += i;
}
std::cout << "1到100的和是:" << sum << std::endl;
while循环
while循环在条件为真时重复执行代码块,适合循环次数未知的情况。
// while循环示例
int count = 1;
// 打印1到5的数字
while (count <= 5) {
std::cout << count << " ";
count++;
}
std::cout << std::endl;
int count = 1;
// 打印1到5的数字
while (count <= 5) {
std::cout << count << " ";
count++;
}
std::cout << std::endl;
do-while循环
do-while循环至少执行一次,然后检查条件是否继续执行。
// do-while循环示例
int number;
do {
std::cout << "请输入一个正数:";
std::cin >> number;
} while (number <= 0);
std::cout << "您输入的正数是:" << number << std::endl;
int number;
do {
std::cout << "请输入一个正数:";
std::cin >> number;
} while (number <= 0);
std::cout << "您输入的正数是:" << number << std::endl;
break和continue
break语句用于跳出循环,continue语句用于跳过当前循环的剩余部分。
// break示例
for (int i = 1; i <= 10; i++) {
if (i == 5) {
break; // 当i等于5时跳出循环
}
std::cout << i << " ";
}
std::cout << std::endl; // 输出:1 2 3 4
// continue示例
for (int i = 1; i <= 10; i++) {
if (i % 2 == 0) {
continue; // 跳过偶数
}
std::cout << i << " ";
}
std::cout << std::endl; // 输出:1 3 5 7 9
for (int i = 1; i <= 10; i++) {
if (i == 5) {
break; // 当i等于5时跳出循环
}
std::cout << i << " ";
}
std::cout << std::endl; // 输出:1 2 3 4
// continue示例
for (int i = 1; i <= 10; i++) {
if (i % 2 == 0) {
continue; // 跳过偶数
}
std::cout << i << " ";
}
std::cout << std::endl; // 输出:1 3 5 7 9
嵌套循环
循环可以嵌套使用,一个循环内部可以包含另一个循环。
// 嵌套循环示例:打印乘法表
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= i; j++) {
std::cout << j << "×" << i << "=" << i*j << "\t";
}
std::cout << std::endl;
}
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= i; j++) {
std::cout << j << "×" << i << "=" << i*j << "\t";
}
std::cout << std::endl;
}
学习建议
- 理解不同控制流程的适用场景
- 注意循环条件的设置,避免无限循环
- 合理使用break和continue提高代码效率
- 多练习嵌套循环和条件语句的组合使用
- 注意代码的可读性,适当使用缩进和注释