java基础(五)——多重循环经典示例

一、打印三角形和平行四边形

public class Demo2 {
    
    
    public static void main(String[] args) {
    
    
        //直角在左下角的直角三角形
        for (int i = 0; i < 5; i++) {
    
    
            for (int j = 0; j <=i; j++) {
    
    
                System.out.print("*");
            }
            System.out.println();
        }
        System.out.println();
//        //平行四边形
//        for (int i = 0; i < 5; i++) {
    
    
//            for (int j = 0;  j<i; j++) {
    
    
//                System.out.print(" ");
//            }
//            for (int j = 0; j< 5;j++) {
    
    
//                System.out.print("*");
//            }
//            System.out.println();
        //直角在右上角的三角形
        for (int i = 0; i < 5; i++) {
    
    
            for (int j = 0; j < i; j++) {
    
    
                System.out.print(" ");
            }
            for (int j = 0;  j< 5-i; j++) {
    
    
                System.out.print("*");
            }
            System.out.println();
        }
        //等腰三角形
        for (int i = 0; i < 5; i++) {
    
    
            for (int j = 0;  j< 4-i; j++) {
    
    
                System.out.print(" ");
            }
            for (int j = 0; j < 2*i+1; j++) {
    
    
                System.out.print("*");
            }
            System.out.println();
        }
    }
}

二、九九乘法表

1.break及return的用法

public class Demo3 {
    
    
    public static void main(String[] args) {
    
    
        for (int i = 1; i <=9; i++) {
    
    
            for (int j = 1; j <=i; j++) {
    
    
//                if(i==j){   //在多重循环中,break只跳出当前循环
//                    break;
//                }
                // return 跳出当前方法
                System.out.print(i+"*"+j+"="+i*j+"\t");// 可以用制表符\t进行对齐
            }
            System.out.println();
        }
    }
}

2.continue的用法

public class Demo4 {
    
    
    public static void main(String[] args) {
    
    
        //统计大于80分的学生比例
        Scanner sc =new Scanner(System.in);
        System.out.print("输入班级总人数:");
        int num=sc.nextInt();
        int cnt=0;
        for (int i = 0; i <=num; i++) {
    
    
            System.out.print("请输入第"+i+"个学生的成绩:");
            int score= sc.nextInt();
            if(score<80){
    
    
                continue;
            }
            cnt++;
        }
        System.out.println("80分以上的学生总数为:"+cnt);
        System.out.println("80分以上的学生比例为:"+cnt/(double)num);
    }
}

三、判断2到100的素数

public class Demo6 {
    
    
    public static void main(String[] args) {
    
    
        for (int i = 2; i <= 100; i++) {
    
    
            boolean flag = false;
            for (int j = 2; j < i; j++) {
    
    
                if (i % j == 0) {
    
    
                    flag = true;
                    break;
                }
            }
            if (!flag) {
    
    
                System.out.println(i + "是素数!");
            }
        }
    }
}

四、分解质因数

public class Demo7 {
    
    
    public static void main(String[] args) {
    
    
        Scanner sc= new Scanner(System.in);
        System.out.print("请输入一个正整数:");
        int num = sc.nextInt();
        System.out.print(num+"=");
        for (int i = 2; i <=num; i++) {
    
    
            if(i==num){
    
    
                System.out.println(num);
                break;
            }
            if(num%i==0){
    
    
                System.out.print(i+"*");
                num/=i;
                i--;
            }
        }
    }
}

猜你喜欢

转载自blog.csdn.net/wl20040124/article/details/112460902