Java循环语句练习题答案(二)

1.判断一个数是否是素数

素数的定义:除了1和自身外,不能被任何数整除。因此,编程思路 就是用这个数去除2~m-1(假设这个数为m),如果余数不为0,那么为素数。

import java.util.Scanner;

public class Test07 {
    public static void main(String[] args) {
        //判断一个数是否是素数
        //素数指的是除了1和他自己不能被任何整数整除,假设素数为a,即把2~a-1都去整除
        Scanner input = new Scanner(System.in);
        int num = input.nextInt();
        boolean isPrime = false;
        for (int i = 2; i < num; i++){
            if(num % i ==0){
                isPrime = false;
                break;
            }else{
                isPrime = true;
            }
        }

        if(isPrime){
            System.out.println(num+"是一个素数!");
        }else{
            System.out.println(num+"不是一个素数!");
        }

        input.close();
    }
}

运行结果:

 

 

 

2.求整数1~100的累加值,但要求跳过所有个位为3的数

public class Test08 {
    public static void main(String[] args) {
        //求整数1~100的累加值,但要求跳过所有个位为3的数
        //3,13,23,33...93
        int sum = 0;
        for (int i = 1; i <= 100; i++) {
            if(i % 10 !=3) {
                sum = sum + i;
            }
        }
        System.out.println(sum);
    }
}

当然,我们可以按照正常的思路,即从1开始一直累加,遇到个位为3 ,则跳出本次循环,可以用到continue语句

public class Test08 {
    public static void main(String[] args) {
        //求整数1~100的累加值,但要求跳过所有个位为3的数
        //3,13,23,33...93
        int sum = 0;
        for (int i = 1; i <= 100; i++) {
            if(i % 10 ==3) {
                continue;
            }
                sum = sum + i;
        }
        System.out.println(sum);
    }
}

运行结果:

 

3.在控制台上输出九九乘法表。

public class ForDemo01 {
    public static void main(String[] args) {
        //打印九九乘法
        for (int i = 1; i <= 9; i++) {
            for(int j = 1; j<=i; j++){
                System.out.print(j+"*"+i+"="+i*j+"\t");
            }
            System.out.println();
        }
    }

}

运行结果:

 

 

4.在控制台上用*号输出等腰三角形

public class TestDemo01 {
    public static void main(String[] args) {
       // 用*字符打印一个5行的三角形
        for (int i = 1; i <= 5; i++) {
           for (int j = 5; j > i; j--) {
                System.out.print(" ");
            }
            for (int k = 1; k <= 2*i-1; k++) {
                System.out.print("*");
            }

            System.out.println();
        }
    }

}

运行结果:

 

posted @ 2020-10-28 22:35  Danny·茄子  阅读(531)  评论(0)    收藏  举报