所以,我需要使用一个嵌套的for循环来创建一个向后的三角星,顶部有4颗星,然后下一行只有3颗星,但在开头有一个空格,所以每行最终在同一列。这有点难以描述,但结构在我的代码中的注释中。
我可以创建一个以4颗星开头并以底部有一颗星结尾的三角形,但我似乎无法将这些空间排成一行,以便它们都在同一点结束。我得到的最接近的是前两行,但最后两行分别有两颗星和一颗星。
这是我的代码:
public static void stars()
//****
// ***
// **
// *
{
int c = 0;
for (int r = 4; r >= 1; r--)
{
for (c = r; c >= 1; c--)
{
System.out.print("*");
}
System.out.println();
System.out.print(" ");
}
}
如果您有任何回复,我欢迎他们。
答案 0 :(得分:0)
您可以使用另一个循环来打印空格。第r
行的空格数将仅等于4 - r
:
public static void stars() {
for (int r = 4; r >= 1; r--) {
for (int i = 0; i < 4 - r; i++) {
System.out.print(" ");
}
for (int c = r; c >= 1; c--){
System.out.print("*");
}
System.out.println();
}
}
输出:
****
***
**
*