牛客网基础-小飞机

思路:

  1. 因为输出固定,可以采用直接使用print语句格式输出
public class Main{
    public static void main(String[] args){
        System.out.println("     "+"**");
        System.out.println("     "+"**");
        System.out.println("*****"+"**"+"*****");
        System.out.println("*****"+"**"+"*****");
        System.out.println("    "+"*  *");
        System.out.println("    "+"*  *");
    }
}

输出:

     **
     **
************
************
    *  *
    *  *
  1. 看了牛客网的解题发现,还有其它方法,稍微复杂一点。可以通过观察输出发现,第一二行和五六行都只输出两个,三四行是输出全是。可以写一个函数通过传递不同参数,改变字符串数组所存的内容,然后对它循环输出两次。
    代码如下:
public class Main{
    public static void main(String[] args){
       for(int i=0;i<2;i++)
       {
            Print(6,7);
           System.out.print("\n");
       }
        for(int i=0;i<2;i++)
        {
            Print(-1,-1);
            System.out.print("\n");
        }
        for(int i=0;i<2;i++)
        {
            Print(5,8);
            System.out.print("\n");
        }
    }
    public static void Print(int n1,int n2)
    {
        if(n1==-1)
            System.out.print("*****"+"**"+"*****");
        else {
            for(int i=1;i<13;i++){
                if(i==n1)
                    System.out.print("*");
                else if(i==n2)
                    System.out.print("*");
                else
                    System.out.print(" ");
            }
        }
    }
}

输出:

     **     
     **     
************
************
    *  *    
    *  *    

版权声明:本文为eddieSisyphe原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/eddieSisyphe/p/14621473.html