for、while、do-while 三种循环之do-while循环(JAVA)
do-while循环
循环系列:
for、while、do-while 三种循环之for循环(JAVA)
for、while、do-while 三种循环之while循环(JAVA)
特点
do-while循环是一种非常有特色的循环方式,程序运行后,不管三七二十一,先执行一遍循环体,再作判断,若满足条件,则执行第二次循环,否则循环结束。
语法格式
do{
//循环体
//循环迭代
}while(循环条件);
猜数小游戏
题目:
- 从1-100之间随机产生一个数,每个用户只能猜10次,10次都没有猜对,则游戏结束。
分析
- 在java的Math对象中的,有一个方法可以产生一个随机数,那就是Math.random(),它所产生的是0-1之间的随机数,根据题目要求,需要产生1-100之间的随机数,所以我们需要这样
Math.random() * 100 + 1
- 因为需要的是整数类型,所以在Math对象中有个Math.floor();方法可以向下取整,并且需要通过强制类型转换得到1-100之间的数,所以
(int)Math.floor(Math.random() * 100 + 1);
- 还有一个要求是达到10次还没有猜对,则游戏结束,所以需要有一个判断,当循环次数达到10次的时候,跳出循环,此处需要用到break,表示跳出循环。
if(num == 10){
System.out.println("10次啦,好笨哟!");
break;
}
代码实现:
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = 1; //猜数次数
int n = (int)Math.floor(Math.random() * 100 + 1); //1-100随机数
System.out.println("欢迎来到猜数小游戏!该数在(0-100)之间哟!");
System.out.println("开始猜数");
do {
System.out.print("第"+num+"次猜数:");
int num1 = sc.nextInt();
if (num1 == n){ //判断输入的数和随机数是否相等,若相等则猜对啦
System.out.println("你真聪明!猜对了!");
break; //猜对之后,利用break;退出循环
}else if (num1 < n){
System.out.println("小了,继续猜!");
}else {
System.out.println("大了,继续猜!");
}
if (num == 10){ //当猜测次数达到10次时,则退出循环
System.out.println("真笨,不跟你玩儿了!");
break;
}
num++;
}while (num <= 10);
}
运行结果
通过这个小游戏,可以很清楚的看出do-while循环的特点,游戏开始,先猜数,再判断,所以不管三七二十一,先执行循环体,再判断。
感谢阅览,别忘了点赞哟!