看板 C_and_CPP 關於我們 聯絡資訊
: -- : ※ 發信站: 批踢踢實業坊(ptt.cc) : ◆ From: 220.137.78.72 : 推 VictorTom:嚴格的來說這個方法是兩層迴圈吧@_@" 11/04 14:38 : → VictorTom:不然其實我寫個遞迴版的, 改變call深入與印*的順序, 就 11/04 14:39 : → VictorTom:產生兩題的答案了XD 11/04 14:39 void printStar(int num) { if (num > 0) { printf("*"); printStar(num - 1); } } void printStarLine(int size, boolean increment) { if (level > 0) { if (increment) { printStarLine(size -1, increment); } printStar(size); printf("\n"); if (!increment) { printStarLine(size - 1, increment); } } } 所以要 *** ** * 就 printStarLine(3, false); * ** *** 就 printStarLine(3, true); 可以嗎? :P -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 202.155.236.82 ※ 編輯: adrianshum 來自: 202.155.236.82 (11/04 15:19) ※ 編輯: adrianshum 來自: 202.155.236.82 (11/04 15:19) ※ 編輯: adrianshum 來自: 202.155.236.82 (11/04 15:21)
VictorTom:壞蛋XDDDDDDD 可是您忘了要用一層for loop XD 11/04 15:27
VictorTom:for(;!printf("*\n**\n***\n");); 這是原po一開始沒講 11/04 15:28
VictorTom:清楚細節時, 小弟當初想到的答案....XDDD 11/04 15:29
adrianshum:一層嗎...? 那麼 for(i=0;i<1;i++){printStarLine(..)} 11/04 17:21
VictorTom:XDDD 11/04 17:29