java: 5-4 while循环 + do while循环

本文详细介绍了Java中的while和do...while循环,包括基本语法、流程图示例、上手练习以及内存分析方法。通过实例演示了如何在代码中运用这两种循环结构,并提供了练习题以巩固学习。


【老韩b站视频笔记p126-p132】

1. while循环

1.1 基本语法

请添加图片描述

1.2 流程图

请添加图片描述

1.3 上手练习

  • 输出 10 句 你好,韩顺平教育。
public class var01 {
	public static void main(String[] args) {
		//while练习,打印10句“你好,韩顺平教育!”
		int i = 1;
		while(i <= 10){
			System.out.println("你好,韩顺平教育!");
			i++;
		}
		System.out.println("退出while循环,继续执行程序。")
	}
} 

【练习内存分析法】

1.4 细节

  1. 循环条件是返回一个布尔值的表达式
  2. while 循环是先判断,再执行。

1.5 练习题

  1. 打印1—100之间所有能被3整除的数。
  2. 打印40—200之间所有的偶数。
public class var01 {
	public static void main(String[] args) {
		//1。打印1—100之间所有能被3整除的数
		//化繁为简,先死后活,利于思考。
		int i = 1
		int end = 100
		int num = 3
		while(i <= end){
			if(i % num == 0){
				System.out.println(i);
			}
			i++;//变量的自增跟是不是3的倍数无关。
		}
		//2. 打印40—200之间所有的偶数 [使用while,课后练习]
		int j = 40
		int end = 200
		int num = 2
		while(j <= end){
			if(j % num == 0){
				System.out.println(j);
			}
			j++;
		}
	}
} 

【注意:i++变量的自增要在if外面!!!它跟3的倍数无关。】

2. do while 循环

2.1 基本语法

请添加图片描述

  1. do while 是关键字
  2. 也有循环四要素, 只是位置不一样
  3. 先执行,再判断,也就是说,一定会至少执行一次
  4. 最后有一个分号 ;
  5. while 和 do…while 区别举例: 【要账】

2.2 流程图

在这里插入图片描述

2.3 上手练习

  • 输出 10 句 你好,韩顺平教育。
public class var01 {
	public static void main(String[] args) {
		//do while练习,打印10句“你好,韩顺平教育!”
		int i = 1;
		do{
			System.out.println("你好,韩顺平教育!");
			i++;
		}while(i <= 10);
	}
} 

2.4 细节

  1. 循环条件是返回一个布尔值的表达式
  2. do…while 循环是先执行,再判断, 因此它至少执行一次

2.5 练习题

  1. 打印1—100
  2. 计算1—100的和
  3. 统计1—200之间能被5整除但不能被3整除的个数
  4. 如果李三不还钱,则老韩将一直使出五连鞭,直到李三说还钱为止。(错题,复习)
public class var01 {
	public static void main(String[] args) {
		//1. 打印1—100[学生做]
		int i = 1;
		int end = 100;
		do{
			System.out.println(i);
			i++;
		}while(i <= end);
		
		//2. 计算1—100的和[学生做] 
		int j = 1;
		int end = 100;
		int sum = 0;
		do{
			sum += j;// ⚠️这里的sum+=j得在j++前面,不然j=1会被跳过。
			System.out.println(sum);
			j++;
		}while(j <= end);
		System.out.println(sum);
		
		//3. 统计1---200之间能被5整除但不能被3整除的个数
		int i = 1;
		int end = 200;
		int num1 = 5;
		int num2 = 3;
		int count = 0;
		do{
			if(i % num1 ==0 && (i % num2 != 0)){
				System.out.println(i);
				count++;
			}
			i++;
		}while(i <= end);
		
		//4. 如果李三不还钱,则老韩将一直使出五连鞭,直到李三说还钱为止。
		//
		//化繁为简
		//1. 不停的问还钱吗?
		//2. 使用char answer接收,定义一个Scanner对象接收。
		//3. 在dowhile的while判断,y就结束循环。
		import java.util.Scanner;
		Scanner myScanner = new Scanner(System.in);
		char answer = ' ';
		do{
			System.out.println("老韩使出5连鞭");
			System.out.println("还钱吗?y/n");
			answer = myScanner.next().charAt(0);
			System.out.println("它的回答是" + answer)}while(answer != 'y');
	}
} 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值