题目

◆用循环打印出下列图形:
**********      //10星
         *
        *
       *
      *
     *
    *
   *
  *
 *
**********      //10星
(提示:若用单层循环,则可以考虑for+switch结构实现)

代码

public class home {
    public static void main(String[] args) {
        String s = "*";
        String n = " ";
        for (int l = 0; l < 11; l++) { //循环打印11行
            switch (l){
                case 0:
                case 10:
                    System.out.println("**********"); //第一行和最后一行输出十个*
                    break;
                default:  //除开第一行和最后一行执行这个方法
                    s = "*";
                    n = "";
                    for (int j = 0; j <= 10-l; j++) {  //根据行数来输出多少个“ ”(空格)
                        n = n +" ";
                        if (j == 9-l){
                            n = n + s;  //末尾加上*
                        }

                    }
                    System.out.println(n);
            }
        }

      /*
      第一版
      System.out.println("**********");
      for (int i = 0; i < 9; i++) {
            s = "*";
            n = "";
            for (int j = 0; j <= 9-i; j++) {
                n = n +" ";
                if (j == 8-i){
                    n = n + s;
                }

            }
            System.out.println(n);
        }
        System.out.println("**********");
        */

    }
}
最后修改:2021 年 09 月 23 日
如果觉得我的文章对你有用,请随意赞赏