架构师

您现在的位置是:首页 > 工作面试 > 初级面试

初级面试

Java面试宝典_基础编程练习题_打印菱形

架构师小跟班 2019-07-12 初级面试
题目题目:打印出如下图案(菱形)
*
***
******
********
******
***
*
程序分析:先把图形分成两部分来看待,前四行一个规律,后三行一个规律,利用双重 for循环,第一层控

题目

题目:打印出如下图案(菱形)
    *
   ***
 ******
********
 ******
  ***
   *
程序分析:先把图形分成两部分来看待,前四行一个规律,后三行一个规律,利用双重 for循环,第一层控制行,第二层控制列。

代码

/**
 * @author :xy.hero@qq.com
 * @date :Created in 2019-07-12 13:13
 * @description:www.jiagou1216.com
 * @modified By:
 * @version: $
 */
public class Test {
    public static void main(String[] args) {
        int n = 5;
        printStar(n);
    }

    //打印星星
    private static void printStar(int n) {
        //打印上半部分
        for (int i = 0; i < n; i++) {
            for (int j = 0; j < 2 * n; j++) {
                if (j < n - i)
                    System.out.print(" ");
                if (j >= n - i && j <= n + i)
                    System.out.print("*");
            }
            System.out.println();
        }
        //打印下半部分
        for (int i = 1; i < n; i++) {
            System.out.print(" ");
            for (int j = 0; j < 2 * n - i; j++) {
                if (j < i)
                    System.out.print(" ");
                if (j >= i && j < 2 * n - i - 1)
                    System.out.print("*");
            }
            System.out.println();
        }
    }
}

输出

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

文章评论