我的任务是编写一个程序,该程序显示用户输入的星号数量,然后将其平方。因此,如果我输入6,计算机将显示36。

我正在用Java编程。

这就是我应该得到的:

Please enter the number of stars you would like(between 1 and 20):   4
* * * *
* * * *
* * * *
* * * *


每当我运行该程序时,在打印完之后,请输入您想要的星数(在1到20之间):,它会显示我输入的数字...没有任何反应。空白。

这是我的代码。我不确定自己做错了什么:

Scanner input = new Scanner(System.in);
    String star = "*";



    System.out.print("Please enter the number of stars you would like(between 1 and 20):\n>> ");
    int numStars = input.nextInt();

    for(int squared = numStars*numStars; squared < numStars+1; squared++)
    {
        for(int stop = 0; stop < numStars; stop++)
      {
            System.out.print(star+" ");
      }
        System.out.println(star+" ");
    }

    System.out.println();

最佳答案

您未输入for循环,因为squared < numStars+1不正确。

int numStars = 4;
String star = "*";
for (int i = 0; i < numStars; i++) {
    if (i != 0)
        System.out.println();
    for (int j = 0; j < numStars; j++) {
        if (j != 0)
            System.out.print(' ');
        System.out.print(star);
    }
}


输出为

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

10-05 23:13