簡體   English   中英

打印星號-Java /文本文件

[英]Printing asterisks - java/text files

對於措辭不好的問題,很抱歉,今天早上我急忙上課,因為課程即將結束。

-

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。

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

與上面類似的代碼,但對我不起作用。 我試圖求逆,但是沒有用。

嘗試這個:

    final int maxS = 10;

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

使用您的實際代碼,您將得到一個正方形,這是有關如何實現的示例:

我已將第一個替換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();
    }
}

嘗試:

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();
}

你必須想一步一步來。 在每一個外循環,每個內環會發生什么。 實際上,這很容易。 如果無法正常工作,則應手動遍歷紙上的每個循環。 您希望它在每次迭代時都減少,因此必須使用--而不是++

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM