看板 C_and_CPP 關於我們 聯絡資訊
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) Dev-C 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) 問題(Question): 餵入的資料(Input): 預期的正確結果(Expected Output): 1 121 12321 1234321 錯誤結果(Wrong Output): 1 11 111 1111 程式碼(Code):(請善用置底文網頁, 記得排版) #include <stdio.h> #include <stdlib.h> int main(){ int i,j,k,z=1; for(i=1;i<6;i++) { for(j=5-i;j>0;j--) { printf(" "); //先印出每一列必須的空格 } for(k=0;k<i;k++) { printf("%d",z++); //印出數值 } printf("\n"); //換印下一列 } system("pause"); //使程式暫停在執行畫面讓我們看到結果 return 0; } 補充說明(Supplement): 奇怪,一直跑不出預期的想法結果,想說可以切割分開來個別跑輸出結果 但是總是跑一半。而且內部z數值也沒累加上去 不知道是哪裡有問題呢?? 希望有人能幫我解答一下,謝謝!! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.27.121.141 ※ 文章網址: http://www.ptt.cc/bbs/C_and_CPP/M.1396849729.A.988.html
tpps86511:http://codepad.org/YefPIjSR 04/07 16:04
kaocoming:你z是多設的 數字跟著k跑就可以了 04/07 16:36
kaocoming:還有你這樣印只能印左半部 04/07 16:37
kaocoming:你最內層的迴圈稍微改一下就可以了 04/07 16:38
Mchord:printf引數打z++會有效果嗎?_? 04/07 20:48
purincess:有啊,會印出z當下的值,然後z會加一 04/07 23:15
hbzncu:只要分成三部分來思考:1.列印空白,2.i在小於等於列數時遞增 04/08 02:02
hbzncu:3.i大於列數時遞減;從你程式只看到遞增部分沒有遞減部分 04/08 02:04