Re: [問題] 如何印出一個平方陣?

看板C_and_CPP (C/C++)作者 (★GY大★)時間16年前 (2010/03/27 10:19), 編輯推噓2(205)
留言7則, 3人參與, 最新討論串2/4 (看更多)
※ 引述《ggyy940 (★GY大★)》之銘言: : 小弟又來請教各位高手了!! : 題目要求寫一個程式,它的範圍是在1~20中,當我們輸入一個數字, : 它會跑出這個數字的平方陣。例如輸入4進去,會跑出如下圖 : **** : **** : **** : **** : 也就是輸入4就是4X4,輸入5就是5X5 : 小弟在網路上查了很多資料,想了很久,如果不要用A[a][b]的方法, : 單純用while迴圈和if能做的出來嗎?(因為小弟現在才學到這裡) : 麻煩高手指點迷津 : 謝謝!! 之前版友給了一些提示,用2個while迴圈,和內迴圈印符號,外迴圈換行, 但接下來範圍的問題,讓小弟很頭痛,以下是小弟寫的程式碼: #include <stdio.h> int main(void) { int num1; printf("Enter a number and I will show you a picture\n"); scanf("%d",&num1); num1=21-num1; while(num1<=20) { printf("\n"); while(num1<=20) { printf("*"); num1=num1+1; } num1=num1; } return 0; } 小弟跑出來的結果,橫的可以控制了,但現在變成直得不行,沒辦法再回到外迴圈去, 請問一下是要再加一個num2的值讓它回去嗎? 可是小弟也不知道怎麼加,試了好多次... 麻煩高手再指點迷津一下,感謝!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.64.150.26

03/27 10:21, , 1F
小弟之前是外迴圈符號,內迴圈換行,但這樣變成橫的管不到
03/27 10:21, 1F

03/27 10:22, , 2F
好囧-.-''
03/27 10:22, 2F

03/27 11:41, , 3F
外圈要num2=0;while(num2<=20){...++num2;}
03/27 11:41, 3F

03/27 12:27, , 4F
還是跑不出來...
03/27 12:27, 4F

03/27 12:30, , 5F
是小弟原本的想法就無解嗎? 還是??
03/27 12:30, 5F

03/27 12:31, , 6F
想了好久一直想不出來....快要爆炸了...
03/27 12:31, 6F

03/27 13:29, , 7F
num2=num1; while(num1<=20);num1=num2你想做的應該是這樣吧
03/27 13:29, 7F
文章代碼(AID): #1BhMjB2M (C_and_CPP)
討論串 (同標題文章)
文章代碼(AID): #1BhMjB2M (C_and_CPP)