循环结构
1.本章学习和学习方法
这是学习java第一个难点需要多学多练
通过流程图分析需求是很重要的方法
大胆去学大胆论证
记录自己编写错误
代码结构需要规范
2.为什么需要循环
循环结构的两个特点
需要重复发生的事情需要使用循环
while使用条件是代码简洁,重复。
循环结构的特点:循环操作,循环条件。
3.while循环
int i=1;
while(i<=100){
System.out.println("第"+i+"遍");
i++;
}
System.out.println(“第”+i+“遍”);
i++;这是循环操作
i<=100是循环条件
while(循环条件){
循环操作
}
例子1 打印50份卷子
//使用循环while循环打印50试卷
public class Text1 {
public static void main(String[] args) {
// 记录打印试卷的份数
int juan =1;
while(juan<=50) {
System.out.println("第"+juan+"份卷子");
juan++;
例子2 学习不合格循环上午学习下午学习
//使用while循环输出学生学习任务
import java.util.Scanner;
public class Text02 {
public static void main(String[] args) {
String answer;//表示是否合格
//Scanner 用法先开一个口子
Scanner input = new Scanner(System.in);
System.out.println("合格了吗");
answer = input.next();
while("n".equals(answer))
//或者是while(!"y".equals(answer)),!意为不是
{
//执行学习任务
System.out.println("上午学习");
System.out.println("下午学习");
//每次执行完学习,需要验证一下,确保其能跳出循环**重点
System.out.println("完成了吗");
//如果是完成y跳出循环
answer = input.next();
}
//输出跳出循环结束
System.out.println("完成学习");
}
}
输出结果
总结
4.do-while循环
例子
这个例子用while不好用while结构要求先进行判断再循环,而这个例子中张浩要先循环在进行判断。
这个例子就需要do-while循环
do{
循环操作
}while(循环条件);
do-while循环的特点是先循环再判断
//使用do-while测试学生
import java.util.Scanner;
public class Text03 {
public static void main(String[] args) {
//Scanner 用法先给键盘开一个口子
Scanner input = new Scanner(System.in);
//标识是否合格
String answer = "";
do {
System.out.print("上机编写程序");
System.out.print("是否合格?(y/n)");
answer = input.next();
}while(!"y".equals(answer));
//或者while("n".equals(answer)
System.out.print("恭喜合格");
do-while循环使用的场景
1.在特定条件下去重复做一件事情
2.先循环再做判断
要分清do-while循环的语法和执行流程
do{
循环操作
}while(循环条件);
区分好do-while和while的区别主要是三点不同
1.语法
2.执行顺序
3.初始条件不满足循环条件下是否执行
5.for循环
循环次数固定的情况下,for比while更加简洁
//while循环写输出一百次好好学习
int=0;
while(1<100){
System.out.println("好好学习");
}
//for循环输出一百次好好学习
for(int=0;i<100;i++){
System.out.println("好好学习");
}
将循环条件的初始化,循环条件,循环变量的迭代放入空格中
for循环的语法和顺序
语法:
for( 参数初始化;条件判断;更新循环变量 ){
循环操作
}
执行顺序:
1.参数初始化;
2.条件判断;满足条件进入3
3.循环操作
4.更新循环变量
不固定循环次数是优先使用while循环
6.for循环的使用
题目1
import java.util.*;
public class Text05 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
//接收姓名
System.out.println("请输入学生姓名");
String ming =input.next();
//记录每门课的成绩
int score =0;
//记录成绩之和
int sum = 0;
for(int i=1; i<=5; i++) {
System.out.println("请输入5门功课中第"+i+"门课的成绩:");
//score获得循环中录入的值
score = input.nextInt();
//每门课的成绩都要累加在sum中
sum = sum+score;
}
//计算平均数
//计算,赋值
double fen =sum/5;
//输出
System.out.println(ming+"的平均成绩"+fen);
}
}
int sum = 0;这句话不能放到循环结构中,因为如果放到循环中,sum会无限清零再获得成绩。
//计算平均数
//计算,赋值
double fen =sum/5;
//输出
System.out.println(ming+"的平均成绩"+fen);
计算平均分也不能放到循环结构中,因为这会导致他每次都会跟着循环结构循环五次导致最后得出的数值不精准。如下图所示👇
题目2
import java.util.*;
//使用for循环输出加法表
public class Test06 {
public static void main(String[] args) {
//设置两个循环时需要的值
int i,j;
//让键盘输入一个值
Scanner input = new Scanner(System.in);
System.out.print("请输入一个值");
int zhi = input.nextInt();
//循环结构主体,有两个值或者变量的时候用,隔开
//参数初始化:i=0 j=zhi,i从开始0出,j则是与输入的值相同,符合题目
//条件判断:i<=zhi,i最大为输入的值的大小
//更新循环变量:本题目有两个变量,变量i逐渐自加,变量j逐渐自减
for(i=0,j=zhi; i<=zhi;i++,j-- ) {
System.out.println(i+"+"+j+"="+(j+i));
}
}
}
有两个值或者变量的时候用,逗号隔开。
System.out.println(i+"+"+j+"="+(j+i));用()括起来的会优先计算。
for循环常见问题
1.变量i必须要初始化,可以放在里面也可以放在外面,但是括号内必须有两个;。
2.必须要有循环条件并且让循环条件有个头,不能出现死循环。
3.必须更新变量迭代。
for循环使用需要注意
1.循环条件
2.循环变量
3.循环控制
4.代码编写格式