看板 C_and_CPP 關於我們 聯絡資訊
這次是金字塔製作, 下面是題目: ====================== 金字塔形共幾列:3 * *** ***** ====================== 然後這是我想的程式: printf("金字塔形共幾列:"); scanf("%d", &no); for(i = 1; i <=no; i+=2){ for (j = 1; j <= no-i; j+=2) putchar(' '); for (j = 1; j <= i; j++) putchar('*'); putchar('\n'); } 但是輸出的結果卻不一樣, 以下是我跑的結果: ===================== 金字塔形共幾列:5 * *** ***** ===================== 我不曉得為什麼會這樣,是因為我設輸入數字的關係嗎? 麻煩板上大大幫我解答,謝謝大家!! (附帶一個問題,為什麼題目輸入3就可以跑出三行,而我必須輸入5?) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 58.115.139.14
kikolee:第一層for迴圈, i一次加2, 自然與你預想的停止條件不同 08/03 23:24
kikolee:再思考一下邏輯吧! 08/03 23:25
※ 編輯: shile775 來自: 58.115.139.14 (08/03 23:43)