我需要在Java中使用嵌套的for循环来制作像这样的三角形
********
*******
******
*****
****
***
**
*
继承我的代码:
for (int i=8; i>0; i--)
{
for (int j=0; j<i; j++)
{
System.out.print('#');
}
System.out.println("");
}
我得到一个三角形而不是我想要的那个。相反,我的三角形看起来像这样:
********
*******
******
*****
****
***
**
*
答案 0 :(得分:0)
试试这个
public static void main(String[] args)
{
triangle(8);
}
private static void triangle(int len)
{
for (int j = 0; j < len; j++)
{
for (int k = 0; k < j; k++)
{
System.out.print(' ');
}
for (int k = len-j; k > 0; k--)
{
System.out.print('#');
}
System.out.println();
}
}
答案 1 :(得分:0)
您需要外部循环来计算8行。内循环将输出每行的*。外部循环的行数将告诉您输出的空格数与*相比。
答案 2 :(得分:0)
使用以下代码
int f=8;`
for (int i=f; i>0; i--){
for (int k=0; k<f-i;k++){
System.out.print(' ');
}
for (int j=0; j<i; j++){
System.out.print('*');
}
if(i-1!=0)System.out.println("");
}
你的代码也在三角形的末尾产生了一条不必要的行,这段代码处理了这一行,并且能够制作出所需的三角形。
我已对其进行了测试,请参阅here。