for(int i = 1; i < 12; i++)
{
for(int k=11; k > i; k--)
{
System.out.print("*");
}
System.out.print("\n");
}
我上面的代码显示了这样的设计:
**********
*********
********
*******
******
*****
****
***
**
*
我想交换它,看起来像这样:
**********
*********
********
*******
******
*****
****
***
**
*
我知道我需要以某种方式使用循环和System.out.print(“”)来留空间。
最好的使用方法是什么?我创建了两个单独的循环,但是使用下一行命令,这不会在两个循环中起作用。我如何将其整合到一个循环中?
答案 0 :(得分:2)
对于第二张&#34;图片&#34;:您必须在&#34; *&#34;之前打印可变数量的空格。这可以通过在打印&#34; *&#34;的循环之前使用另一个循环来实现,并且知道每次打印一行时,打印的空格数增加一,并且星号的数量减少了一个。
编辑:
这里有一个提示,让你开始。填写空白(并删除评论):
int delta = /*fill*/;
for (int i = 0; i < /*fill*/; i++) {
for (int j = 0; j < /*fill*/; j++) {
System.out.print(" ");
}
for (int j = 0; j < /*fill*/; j++) {
System.out.print("*");
}
delta += /*fill*/;
System.out.print("\n");
}
答案 1 :(得分:0)
使用String.format左边填充空格。
答案 2 :(得分:-1)
使用二维阵列做到这一点!它非常简单有效!
第二个结果: - 放&#39; *&#39;如果row_no&lt; = column_no(对角线上方的半矩阵加上对角元素),则在其他地方放置一个空格&#34; &#34;在其他地方。在行和列的循环中运行它。然后按行打印2-D阵列。