Java循环小题练习

例1:利用continue来找到0-100以内,既是3的倍数又是5的倍数的所有的数

public class TestDemo {
    public static void main(String[] args) {
        int i = 1;
        while (i <= 100) {
            if (i % 15 != 0) {
                i++;
                continue;
            }
            System.out.println(i);
            i++;
        }
    }
}

例二:计算1!+2!+3!+4!+5!

public static void main(String[] args) {
        int j = 1; 
        int sum = 0;
        while (j <= 5) {
            int i = 1;
            int ret = 1;
            while (i <= j) {
                ret = ret * i;
                i++;
            }
            sum = ret + sum;
            j++;

例3:求100以内奇数和偶数的和

public class TestDemo {
    public static void main(String[] args) {
        int sum1 = 0;
        int sum2 = 0;
        for (int i = 0; i <= 100; i++) {
            if(i%2 != 0)
            {
                sum1+=i;
            }else{
                sum2+=i;
            }
        }
        System.out.println("奇数和为 "+sum1);
        System.out.println("偶数和为 "+sum2);
    }
}

例4:猜数字游戏

public class TestDemo {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        Random random = new Random();
        int randNum = random.nextInt(100);
        while(true){
            System.out.println("请输入你要猜的数字");
            int num = scanner.nextInt();
            if(num < randNum){
                System.out.println("猜小了");
            }else if(num == randNum){
                System.out.println("猜对了");
            }
            else{
                System.out.println("猜大了");
            }
        }
    }
}

例5:判断一个数是不是素数

public class TestDemo {
        public static boolean isPrime ( int num){
            for(int i = 2;i<num;i++) {
                if (num % i == 0) {
                    return false;
                }
            }
            return true;
    }
    public static void main(String[] args) {
        if(isPrime(3)){
            System.out.println("It is not prime");
        }else{
            System.out.println("It is prime");
        }
    }
}

改良方案:

public class TestDemo {
        public static boolean isPrime ( int num){
            for(int i = 2;i<Math.sqrt(num);i++) { //开根号,缩小范围
                if (num % i == 0) {
                    return false;
                }
            }
            return true;
    }
    public static void main(String[] args) {
        if(isPrime(3)){
            System.out.println("It is not prime");
        }else{
            System.out.println("It is prime");
        }
    }
}

例6:打印100以内所以素数

public class TestDemo {
        public static boolean isPrime ( int num){
            for(int i = 2;i<Math.sqrt(num);i++) {
                if (num % i == 0) {
                    return false;
                }
            }
            return true;
    }

    public static void main(String[] args) {
        for(int i = 1;i<=100;i++){
            if(isPrime(i)){
                System.out.println(i);
            }
        }
    }
}

例7:输出1000-2000内所有的闰年

public class TestDemo {
      public static boolean isLeapYear(int year) {
        if((year%100 !=0 && year%4==0)||(year%400==0)){
            return true;
        }
        return false;
    }
    public static void main(String[] args) {
            for(int i = 1000;i<=2000;i++){
                if(isLeapYear(i)){
                    System.out.println(i);
                }
            }
    }
}

例8:打印乘法口诀表

public class TestDemo {
    public  static void func(){
        for(int i = 1;i<=9;i++){
            for(int j = 1;j<=i;j++){
                System.out.print(j+"*"+i+"="+j*i+" ");
            }
            System.out.println();
        }
    }
    public static void main(String[] args) {
        func();
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值