4.java的程序控制循环条件(For循环)

循环语句的四个组成部分
1.初始化部分(init_statement)
2.循环条件部分(test_exp)
3.循环体部分(body_statement)
4.迭代部分(alter_statement)
在这里插入图片描述
1.语法格式
for (①初始化部分; ②循环条件部分(boolean类型); ④迭代部分){
③循环体部分;

2.执行过程:
①-②-③-④-②-③-④-②-③-④-…-②
3. 说明:
 ②循环条件部分为boolean类型表达式,当值为false时,退出循环
 ①初始化部分可以声明多个变量,但必须是同一个类型,用逗号分隔
 ④可以有多个变量更新,用逗号分隔

**说明:i在for循环中有效,出了for循环就无效!**通常条件下,循环结构结束一般是由于循环条件==false时,结束。
在这里插入图片描述

for语句例题1

编写程序从1循环到150,并在每行打印一个值,另外在每个3的倍数行
上打印出“foo”,在每个5的倍数行上打印“biz”,在每个7的倍数行上打印
输出“baz”。
在这里插入图片描述
变量在使用之前一定要进行赋值!

for语句例题2

题目:输入两个正整数m和n,求其最大公约数和最小公倍数。
比如: 12和20的最大公约数是4,最小公倍数是60。
说明: break关键字的使用

在这里插入图片描述在这里插入图片描述
在这里插入图片描述
下面展示一些 ForTest1

/*
编写程序从1循环到150,并在每行打印一个值,另外在每个3的倍数行
上打印出“foo”,在每个5的倍数行上打印“biz”,在每个7的倍数行上打印
输出“baz”。
 */

public class ForTest1 {
    public static void main(String[] args) {
        for (int i = 1;i <= 150;i++){
            System.out.print(i + " ");
            if (i % 3 == 0) {
                System.out.print("foo");
            }
            if (i % 5 == 0){
                System.out.print("biz");
            }
            if (i % 7 == 0){
                System.out.print("baz");
            }
            //进行换行
            System.out.println();

        }
    }
}

下面展示一些 ForTest2

/*
题目:输入两个正整数m和n,求其最大公约数和最小公倍数。
比如: 12和20的最大公约数是4,最小公倍数是60。
说明: break关键字的使用
 */


import java.util.Scanner;

public class ForTest2 {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        System.out.println("输入第一个正整数:");
        int m = scan.nextInt();
        System.out.println("输入第二个正整数:");
        int n = scan.nextInt();
        //获取最大公约数
        //先得到两个数中的最小值
        int min = (m < n) ? m : n;
        //遍历
        for (int i = min;i >= 1;i--){
            if (m % i == 0 && n % i == 0){
                System.out.println("最大公约数是" + i);
                break;//一旦执行到break,就会跳出当前循环
            }
        }

        //获取最大公倍数
        int max = (m > n) ? m : n;
        for (int i = max;i <= m * n;i++){
            if (i % m == 0 && i % n == 0){
                System.out.println("最小公倍数是" + i);
                break;//一旦执行到break,就会跳出当前循环
            }

        }

    }
}

下面展示一些 ForTest

/*
输出所有的水仙花数,所谓水仙花数是指一个3位数,其各个位上数
字立方和等于其本身。
例如: 153 = 1*1*1 + 3*3*3 + 5*5*5
 */

public class ForTest {
    public static void main(String[] args) {
        int m,n,j;
        for (int i = 100;i < 1000;i++){
            m = i / 100;
            n = (i / 10) % 10;
            j = i % 10;
            if (i == m*m*m + n*n*n + j*j*j){
                System.out.println("水仙花数:" + i);
            }
        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

原来如此呀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值