用for循环打出直角三角形、倒直角三角形、等腰三角形、菱形、空心菱形

直角三角形

public class MyDemo15{

    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();
        }
    }
}

倒直角三角形

public class MyDemo15{

    public static void main(String [] args){
        for ( int i=0;i<5;i++){

           //此处只要将j<5改成j<4-i就可以改变输出次序
            for ( int j=0;j<4-i;j++){
                System.out.print("*");
            }
            System.out.println();
        }
    }
}

 打印等腰三角形

public class MyDemo11{

    public static void main(String [] args){
        for ( int i=0;i<5;i++){
            for ( int j=0;j<4-i;j++){
                System.out.print(" ");
            }

              //此处之上打印的就是倒直角三角形,只是输出的为空格

              //此处之下打印的就是另一种正直角三角形,和上面打印的空白倒直角三角形结合就成了最终的等腰三角形  ,图如下
            for ( int z=0;z<2*i-1;z++) {
                System.out.print("*");
            }
            System.out.println();
        }
    }
}

 打印菱形

public class MyDemo15{

    public static void main(String [] args){
        
        for ( int i=0;i<5;i++){
            for ( int j=0;j<4-i;j++){
                
                System.out.print(" ");
            }
            for ( int z=0;z<2*i-1;z++) {
                System.out.print("*");
            }
            System.out.println();
        }

        //此处之上打印的是正等腰三角形

        //因为菱形是正等腰三角形与倒等腰三角形组成,但是会公用同一个底边,所以此处设置i=3
        for ( int i=3;i>=1;i--){
            for ( int j=0;j<4-i;j++){
                
                System.out.print(" ");
            }
            for ( int z=0;z<2*i-1;z++) {
                System.out.print("*");
            }
            System.out.println();
        }
    }
}

空心菱形代码和打印菱形代码相似,只是改变了打印条件

public class MyDemo12{

    public static void main(String [] args){
        
        for (int i=0;i<5;i++) {
            for (int j=0;j<5-i;j++) {
                System.out.print(" ");
            }
            for (int z=1;z<=2*i-1;z++) {

                //添加判断语句,当在每一行的第一个和最后一个时输出*
                if ( z==1 || z==( 2*i-1) ) {
                    System.out.print("*");
                }

                //否则输出空白
                else {
                    System.out.print(" ");
                }
                
            }
            System.out.println();
        }

        //同样在打印倒等腰三角形时添加上面的判断语句即可
        for (int i=3;i>=1;i--) {
            for (int j=0;j<5-i;j++) {
                System.out.print(" ");
            }
            for (int z=1;z<=2*i-1;z++) {
                if ( z==1 || z==( 2*i-1) ) {
                    System.out.print("*");
                }
                else {
                    System.out.print(" ");
                }
            }
            System.out.println();
        }
    }
}


版权声明:本文为Yiyebaizhi原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。