打印星号 - java /文本文件

时间:2013-10-01 13:14:20

标签: java

对于措辞不好的问题,很抱歉,今天早上我很匆忙因为课程结束了。

-

final int maxS = height;
for (int row = 1; row <= maxS; row ++)
{
    for (int star = 1; star <= maxS; star++)
        System.out.print("* ");
    System.out.println();
}

我需要这个作为输出:

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

所以高度是行数,即5。我可以得到这个

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

与上面的代码类似,但它对我不起作用。我试图得到反转,但它不起作用。

3 个答案:

答案 0 :(得分:2)

试试这个:

    final int maxS = 10;

    for (int row = 1; row <= maxS; row ++) {
        for (int star=maxS; star >= row; star--) {
            System.out.print("* ");
        }
        System.out.println();
    }

答案 1 :(得分:1)

使用您的实际代码,您将得到一个正方形,这是一个如何实现它的示例:

我已将第一个for替换为:

for (int row = maxS; row >= 1; row--)

和第二个for

for (int star = 1; star <= row; star++)

public static void main(String[] arv) throws Exception {
    final int maxS = height;
    for (int row = maxS; row >= 1; row--) {
        for (int star = 1; star <= row; star++) {
            System.out.print("* ");
        }
        System.out.println();
    }
}

答案 2 :(得分:1)

尝试:

int maxS = height;
for (int row = 1; row <= maxS; row ++)
{
    for (int star = maxS - row + 1; star >= 1; star--)
    System.out.print("* ");
    System.out.println();
}

你必须一步一步地思考。每个外环和每个内环都会发生什么。实际上很容易。如果你无法使它工作,你应该手动完成纸上的每个循环。您希望它在每次迭代时减少,因此您必须使用--而不是++