do-while循环的用法和 while 循环类似。是由 do
关键字 和 while
关键字联合完成。
同样适用于不确定循环次数,只要满足条件就会一直执行。
do-while 里面的 - 号,一般文字表达的时候会这样写,方便阅读。
一、do-while循环的语法
do {
循环体代码;
修改条件;
} while(判断条件);
1、do
和 while
完成循环语法,注意 while 结尾有 ;
;
2、是 先执行一次 循环体代码,再进行判断条件;
3、如果为 true
,那么就会执行 循环体代码,否则为false
循环就结束;
4、一般我们要在循环体代码中修改条件,否则容易出现死循环;
二、#### 代码案例演示
int i = 1;
do{
cout << "你好,世界" << i << endl;
i++;
}while (i < 5); // 这里改成 i < 1,循环体仍然会执行一次
cout << "循环结束后的代码" << endl;
提示输入密码,如果密码不正确,继续输入,直到正确为止;
int mima;
do{
cout << "请输入密码:" << endl;
cin >> mima;
}while(mima != 123456);
cout << "循环结束后的代码" << endl;
三、while和do-while的区别
无论是否满足条件,do-while循环一定会执行一次循环体代码,然后再判断条件,决定是否继续执行。
也就是说 do-while 循环的循环体至少会执行一次;
而while循环是先判断条件,再决定是否执行。
四、编程练习
猜数字的游戏。
编写一个程序,让用户猜一个随机生成的数字,如果猜的大了或小了,给出提示,直到猜中为止。
可以使用do-while
循环来实现。
// 爱码岛编程
#include <iostream>
//随机数库
#include <cstdlib>
#include <ctime>
using namespace std;
int main(){
srand(time(0));
int suiJiShu = rand()%100 + 1;//产生一个随机数
int caiCeShu;//猜测的数字
do{
cout << "请猜一个数字:" <<endl;
cin >> caiCeShu;
if(caiCeShu > suiJiShu){
cout << "你猜的数字太大了" << endl;
}else if(caiCeShu < suiJiShu){
cout << "你猜的数字太小了" << endl;
}
}while(caiCeShu != suiJiShu);
cout << "你猜对了,这个数字是:" << caiCeShu << ",随机数是:" << suiJiShu << endl;
return 0;
}