作者shile775 (笑看人生)
站內C_and_CPP
標題[問題] 金字塔製作
時間Wed Aug 3 23:18:40 2011
這次是金字塔製作,
下面是題目:
======================
金字塔形共幾列: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)