簡體   English   中英

使用星形圖案顯示倒置的半金字塔

[英]Displaying an inverted half pyramid using a star pattern

我想使用由“*”字符組成的圖案來顯示倒置的半金字塔。 運行我的代碼后,輸出似乎是空的。 我想知道是什么問題。

這是所需的輸出:

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

這是我的代碼:

for (int i=1;i<=5 ;i++)
{
    for(int x=5;x<=1;x--)
    {
        printf("* ");
    }
    printf ("\n");
}

僅更改一次金字塔大小的通用解決方案

for (int nb = 5; nb > 0; nb--) {
    for(int i = 0; i < nb; i++) {
        printf("* ");
    }
    printf ("\n");
}

您的代碼中有兩個錯誤。 第一個在這里:

for(int x=5;x<=1;x--)

您應該檢查 x 是否等於或大於 1,而不是相反,因為只有在此條件為真時循環才會運行。

但是,輸出將是一個正方形,而不是一個矩形。 這是因為 x 的起始值和結束值都沒有改變。 最后,如果您希望得到與您發布的結果相同的結果,您可能希望刪除 printf() 中的空格。

所以這是最終的更正代碼:

for(int i=1;i<=5 ;i++)
{
    for(int x=5;x>=i;x--)
    {
        printf("*");
    }
    printf ("\n");
}

運行它將產生正確的輸出。 希望這有幫助。

暫無
暫無

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

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