for:应用率最高、与次数相关的循环
1)语法:
// 1 2 3
for(要素1;要素2;要素3){
语句块/循环体---------------反复执行的代码 4
}
2)执行过程:
1243243243243243...2为false时,for循环结束
for循环带数示例:
//for中的循环变量num的作用域,仅在当前for中----特殊情况特殊记
for(int num=1;num<=9;num++){
System.out.println(num+"*9="+num*9);
}
for(int num=1;num<=9;num+=2){
System.out.println(num+"*9="+num*9);
}
for(int num=9;num>=1;num--){
System.out.println(num+"*9="+num*9);
}
for(int times=0;times<5;times++){
System.out.println("行动是成功的阶梯");
}
System.out.println("继续执行...");
/*
执行过程:-----带数
times=0 true 输出
times=1 true 输出
times=2 true 输出
times=3 true 输出
times=4 true 输出
times=5 false for循环结束
输出继续执行
*/
//for的特殊格式:
int num=1;
for(;num<=9;num++){
System.out.println(num+"*9="+num*9);
}
for(int num=1;num<=9;){
System.out.println(num+"*9="+num*9);
num++;
}
for(;;){ //没有条件的循环就是个死循环
System.out.println("我要学习...");
}
for(int i=1,j=5;i<=5;i+=2,j-=2){
System.out.println(i+","+j);
}
/*
i=1,j=5
i=3,j=3
i=5,j=1
i=7,j=-1
*/
随机加法运算器示例:
import java.util.Scanner;
public class Addition {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int score=0;//总分
for(int i=1;i<=10;i++){ //10次 (1)25+36=?
int a = (int)(Math.random()*100); //加数a----0到99的
int b = (int)(Math.random()*100); //加数b----0到99的
int result = a+b; //存正确结果
System.out.println("("+i+")"+a+"+"+b+"=?"); //1)出题
System.out.println("算吧!");
int answer = scan.nextInt(); //2)答题
if(answer==-1){ //3)判题
break;
}
if(answer==result){
System.out.println("答对了");
score += 10; //答对1题,加10分
}else{
System.out.println("答错了");
}
}
System.out.println("总分为:"+score);
}