循环结构
1. 反复的去执行一段相同或者相近的代码
2. 循环三要素
-1)循环变量初始化 (循环变量—在循环过程中改变的量)
-2)循环条件 (以循环变量的改变为条件)
-3)循环变量的改变 (向着循环结束的方向变)
3.while(){语句块}–先判断再执行,有可能一次都不执行
4.do{语句块}while;–先执行在判断,最少执行一次
- 当第1要素和第3要素相同时首选该语句
5.for(表达式1;表达式2;表达式3){语句块}–应用率最高
- 表达式1和3可为空,但不可3个表达式都为空,否则死循环
6.两个关键字
- 1)break;用在循环结构和switch结构中,表示跳出
- 2)continue;用在循环中,表跳过剩余语句,执行下一次循环
7.循环问题
- 1)当…首选while循环语句
- 2)直到…首选do…while循环语句
- 3)固定次数的循环首选for循环语句
案例
1.猜数字游戏
import java.util.Scanner;
public class Test1 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int x=(int)(Math.random()*100); //系统生成一个随机数,范围在0~99
System.out.println(x);
System.out.print("请输入你猜测的数字(退出请输入-1):");
int a=sc.nextInt();
while(a!=x&&a>=-1){
if(a==-1){
break;
}else if(a>x){
System.out.println("太大了!");
}else if(a<x){
System.out.println("太小了");
}
System.out.print("请输入你猜测的数字(退出请输入-1):"); //第1要素和第3要素相同 用do...while语句来写更好
a=sc.nextInt();
}
if (a==x){
System.out.println("恭喜你猜对了!");
}else if(a==-1){
System.out.println("欢迎再来!");
}else{
System.out.println("输入有误!");
}
}
}
2.随机加法测试
import java.util.Scanner;
import java.util.Random;
public class Test2 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
Random ra=new Random();
System.out.println("欢迎参加10道加法测试题(退出请输入-1)");
int score=0; //成绩
for(int i=1;i<=10;i++){
int a=ra.nextInt(100); //随机产生的加数1(0~99)
int b=ra.nextInt(100); //随机产生的加数2(0~99)
System.out.println("题目"+i+":"+a+"+"+b+"=?");
System.out.print("请输入答案:");
int answer=sc.nextInt();
if(answer==-1){
System.out.println("欢迎再来!");
break;
}else if(answer==a+b){
System.out.println("恭喜!");
score+=10;
}else {
System.out.println("笨蛋!");
}
}
System.out.println("本次测试成绩是:"+score);
}
}