問題:為什麼下面的while雙重迴圈是這樣的結果?
**:
x=1
y=1while true:
while y<9:
x=x+1
y=y+1
print x*10+y
執行結果:
分析:
這是程式執行流程:
x==2,y==2,x*10+y==22
x==3,y==3,x*10+y==33
...
x==9,y==9(y之前為8,符合內層迴圈條件y<9,進入記憶體迴圈執行y=y+1,y等於9),x*10+y==99
由於y==9,不滿足內層迴圈條件y<9,所以跳出內層迴圈。由於內層迴圈後面已經沒有**了,所以程式然後判斷是否符合外層迴圈條件,由於符合外層迴圈條件,所以繼續執行下一條語句,即判斷是否符合內層迴圈條件,由於不符合內層迴圈條件(y==9,不滿足y<9),所以不能執行內層迴圈的列印語句。
可以改為:
x=1
y=1while x<9:
x=x+1
while y<9:
y=y+1
print x*10+y
y=0
所以我們可以這樣實現雙重while迴圈實現列印數字11-99:
x=0
y=0while x<9:
x=x+1
while y<9:
y=y+1
print x*10+y
y=0
written amount 列印數字)
include include include static char digits static char tens static char magnitudes static void do one group unsigned int amount,char buffer,char magni...
列印數字回環
題目要求 input a value n,then print out a n n matrix.example 1 input 2,output 1 24 3 example2 input 5,output 1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 2...
python實現while迴圈列印星星的四種形狀
在控制台連續輸出五行 每一行星號數量一次遞增 xnkbzofh 1.定義乙個行計數器 row 1 while row 5 定義乙個列計數器 col 1 開始迴圈 while col l程式設計客棧t row print end col 1 print row 1 如果想要星星倒過來呢 1.定義乙個行...