日志12
do-while循环
1. 基本概念
do - while循环是C++中的一种循环结构。与while循环不同的是,它先执行一次循环体中的语句,然后再判断循环条件是否成立。如果条件成立,就继续执行循环体;如果条件不成立,则结束循环。
2. 语法结构
do { // 循环体语句 } while (条件表达式);
注意,while后面的分号;是do - while循环语法的一部分,不能省略。
3. 示例代码(简单计数)
#include <iostream>
int main() {
int i = 1;
do {
std::cout << i << " ";
i++;
} while (i <= 5);
std::cout << std::endl;
return 0;
}
在这个示例中,首先会执行do后面的循环体,输出1,然后i自增为2。接着判断while中的条件i <= 5是否成立,因为2 <= 5成立,所以继续执行循环体,依次输出2、3、4、5。当i变为6时,6 <= 5不成立,循环结束。
4. 应用场景
用户输入验证:当需要确保用户至少输入一次数据,并根据输入内容决定是否继续循环时,do - while循环很有用。
例如,要求用户输入一个大于0的整数:
#include <iostream>
using namespace std;
int main() {
int num;
do {
cout << "请输入一个大于0的整数: ";
cin >> num;
} while (num <= 0);
cout << "你输入的整数是: " << num << endl;
return 0;
}
这样,即使用户第一次输入不符合要求(小于等于0),程序也会要求用户重新输入,直到输入满足条件为止。
在do while循环中使用break和continue语句的方法
break语句在do - while循环中的使用
功能:break语句用于立即终止do - while循环,无论循环条件是否为真,程序都会跳出循环,继续执行循环体后面的语句。
例子
#include <iostream>
int main() {
int i = 1;
do {
if (i == 3) {
break;
}
std::cout << i << " ";
i++;
} while (i <= 5);
std::cout << "循环结束" << std::endl;
return 0;
}
在这个例子中,do - while循环原本会在i <= 5的条件下执行。但是当i等于3时,遇到break语句,循环立即终止,输出结果为1 2,然后输出循环结束。
continue语句在do - while循环中的使用
功能:continue语句用于跳过当前循环体中continue语句之后的剩余语句,直接进入下一次循环的条件判断部分。
例子
#include <iostream>
int main() {
int i = 1;
do {
i++;
if (i == 3) {
continue;
}
std::cout << i << " ";
} while (i <= 5);
std::cout << "循环结束" << std::endl;
return 0;
}
在这个例子中,当i等于3时,执行continue语句,会跳过std::cout << i << " ";这一行,直接进入下一次循环的条件判断。所以输出结果为2 4 5,然后输出循环结束。