Java基础4--循环结构

本文详细介绍了循环结构的基础概念,包括一元和二元算术运算符的使用,while、do...while及for循环的不同应用场景,并通过实例展示了如何利用循环解决实际问题,如求和、猜数字游戏等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

循环结构

算术运算符的分类

一元运算符

  • i++:  ===》i=i+1,先使用后再对自身加一 int i =1;  int b=i++;   b=1, i=2
  • ++i:===》i=i+1,先对自身加一在使用       int i=1; int b = ++i;   b=2,  i=2
  • i--:====》i=i-1,先使用再对自身减一
  • --i:====》先对自身减一,再使用
二元运算符
+ - * %
a+b
a-b
a%b

while循环语句

i = 1;          //1.循环变量初始化
while(i <=8){   //2.循环的判断条件
	执行这些语句;
	i++;    //3.循环体中改变循环变量的值
}
循环的3要素:

循环例子:

public class while1{
	public static void main(String[] args){
		int i = 1;          //循环变量初始化
		int sum = 0;
		while(i <= 1000){  //循环的判断条件
			sum = sum + i;  
			i++;			//循环体中改变循环变量的值
			System.out.println("1+2+...+1000="+sum);
		}
		System.out.println("循环结束啦!");
	}
}

求学生的平均分:
import java.util.*;
public class avgScore{
	public static void main(String[] args){
		Scanner in = new Scanner(System.in);
		System.out.println("input student number");
		int person = in.nextInt();  //总人数
		int sum = 0;				//总分
		int i =1;					//第i个人
		double avg;					//学生的平均分
		while(i <= person){
			int score ;            //循环里面定义的变量是局部变量,不能被循环外面调用的。
			System.out.println("请输入第"+i+"个学生成绩。");
			score = in.nextInt();
			sum = sum +score;
			i = i+1;
		}
		avg = sum/person;
		System.out.println("avg = "+avg);
	}
}
注意点:循环体里面定义的变量是局部变量,只能在循环里面被调用,循环外面使用循环内定义的变量,会报错的。所以定义变量尽量在循环外面。

do..while循环语句

do{执行语句}while(循环条件);

先执行后判断,至少执行了一次;

import java.util.*;
public class doWhile{
	public static void main(String[] args){
		Scanner in = new Scanner(System.in);
		String answer;
		do{
			System.out.println("input  y/n");
			answer = in.next();    //变量声明在循环体内是局部的
			
		}while(!answer.equals("y"));    //注意分号,字符串作比较使用equals()
		System.out.println("777777777");
	}
}
猜数字游戏
import java.util.*;
public class numberGame{
	public static void main(String[] args){
	Scanner in = new Scanner(System.in);
	int person;
	int computer = (int)(Math.random()*100);
	do{
		System.out.println(" inpnt number (0-100)");
		person = in.nextInt();
		if(person == computer){
			System.out.println(" you are right!!");
			//break;
		}else if(person < computer){
			System.out.println("little !!");
		}else{
			System.out.println("big !!");
		}
	}while(person != computer);
}
}

程序调试

程序提调试的步骤:

  1. 1.选中断点,程序运行到断点会自动停止的;双击某一行代码,就能设置断点了!
  2. 2.点击Debug按就开始调试程序,程序执行到断点会自动停止;
  3. 3.点击F6运行下一步代码,可以在其他窗口看到运行的结果;
  4. 4.点击右上角的“Java”按钮,可以退出调试模式;

程序调试的主要方法:

  1. 1.猜猜出错地方,设置断点;
  2. 2.单步执行,观察变化;
  3. 3.修改问题,重新运行

for 循环语句

注意问题:

  • 声明循环初始变量时,多个需要用逗号隔开,不是分号;
  • 必须声明循环初始变量;
  • 循环条件也要有;
  • 循环变量需要有变化;
  • 循环体内声明的变量是局部变量,在循环外面是不能应用的;

for (int i =1,j=1010;i<100,j--;i++){   //声明循环变量,多个时需要用逗号隔开;

循环体。。。。

}

package xunHuan;

public class forTest1 {
	public static void main(String[] args){
		//1+2+3+...+100=?
		int sum = 0;
		for(int i=1;i <= 100;i++){
			sum = sum + i;
		}
		System.out.println("1+2+3+...+100="+sum);
	}
}
求100个随机数的平均数:随机数、循环

package xunHuan;
import java.util.*;
public class forTes3 {
	public static void main(String[] args){
		int number;
		int sum = 0;
		double avg;
		for(int i=1;i <= 1000;i=i+1){
			number = (int)(Math.random()*1000);
			sum = sum +number;
			//System.out.println("第"+i+"随机数是:"+number);
		}
		avg = sum/1000;
		System.out.print("100个随机数的平均数是:"+avg);

	}
}
死循环:

break语句:终止循环,跳出循环;

package xunHuan;
import java.util.*;
public class deathXunhuan {
	public static void main(String[] args){
		Scanner in = new Scanner(System.in);
		System.out.println("请输入y/n");
		String ok = in.next();
		for(;;){
			if(ok.equals("y")){
				System.out.println("888888888888");
			}else{
				break;  //循环终止
			}
		}
	}
}
continue语句:只能用在循环语句里面;用来结束本次循环;
//密码正确执行后面语句;验证密码
package xunHuan;
import java.util.*;
public class continueTest {
	public static void main(String[] args){
		Scanner in = new Scanner(System.in);
		for(;;){
			System.out.println("请输入密码:");
			int pwd = in.nextInt();
			if(pwd != 123456){
				continue; //密码不正确跳出这次循环,循环重新执行
			}else{
				break;  //密码正确结束循环
			}
		}
		System.out.println("欢迎进入系统!!!");
	}
}

嵌套循环

package xunHuan;

public class qianTaoXh {
	public static void main(String[] args){
		int i =1;
		while(i <= 3){
			System.out.println("喂奶第"+i+"次");
			int j=1;
			while(j <=3){
				System.out.println("宝宝吃奶第"+j+"次");
				j++;
			}
			i++;
		}
	}
}

九九乘法表:

package xunHuan;

public class jiuJiuTest {
	public static void main(String[] args){
		for(int i=1;i <= 9;i=i+1){
			for(int j=1;j<=i;j++){
				System.out.print(j+"*"+i+"="+i*j+"\t");
			}
			System.out.println();
		}
		System.out.print("九九乘法表已完成输出。");
	}
}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值