【java基础练习】打印空心菱形

本人是初次接触编程的小白一枚呀,第一次在CSDN上发文章,想要循序渐进记录自己的学习成果,欢迎大佬们提点和纠错呀OvO~在此谢谢大佬【献上花花】

第一篇:打印空心菱形

import java.util.Scanner;

public class LianXi_01 {
    //给定任意层数,打印空心菱形金字塔
    /*分析:
若菱形有7层
      *
     * *
    *   *
   *     *
    *   *
     * *
      *
则最中间层数上面的每一层需要输出(总行数-当前行数-1)个空格【再-1是为了预防菱形层数为3时代码也能准确输出菱形】
最中间层数上面的每一层需要输出(当前行数*2-1)个*
最中间层数下面的每一层需要输出(当前行数-1-1)个空格【再-1是为了预防菱形层数为3时代码也能准确输出菱形】
第五层需要输出(当前行数-2*1)*2-1个*
第六层需要输出(当前行数-2*2)*2-1个*
第七层需要输出(当前行数-2*3)*2-1个*(只需输出1个*,写出来是为了方便找规律)
所以可以看出需要一个计数器count辅助输出菱形下半部分的代码
而空心菱形只需要输出每一层的第一个*和最后一个*(即当前行数*2-1),其余该输出的*换为输出空格
*/

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int cnt = 0;//计数器
        for(int i = 1; i <= n; i++){//i表示层数

你可能感兴趣的:(java)