双重for循环打印*方阵

img

建议先亲自尝试写一下代码,哪怕不正确也不要紧,贴出自己尝试的代码和错误,然后别人可以帮你分析讨论。

  1. 这种先看规律,每次都比下一行多2个或者少2个
  2. 自己按照想法,大概的流程要有。
  3. 我也菜菜的,java不太会,但是流程如下,这是第一个图形的,第二个图形把条件换一下就行了
for(int i=1;i<=n;i++)//第几行
{ 
  for(int j = 1; j<=2*i-1; j++)//输出几个*
  {
    printf("*");
  }
  printf("\n");//每一行结束后换行
}


public class test {

    public static void main(String[] args) {

        for (int i = 1; i < 5; i++) {
            for (int j = 0; j <2*i-1 ; j++) {
                System.out.print("*");
            }
            System.out.println();
        }

        System.out.println("---------------");

        for (int i = 4; i >0 ; i--) {
            for (int j = 0; j <2*i-1 ; j++) {
                System.out.print("*");
            }
            System.out.println();
        }

        
    }

}

img

img