1樓:匿名使用者
'lz你認真按我的要求做,對它的執行順序就一目瞭然了!
'1、在窗體上畫一個列表框(listbox),一個按鈕(commandbutton)
'2、貼上以下**之一
'3、執行並單擊按鈕,執行的順序就在列表框,這樣你就可以清楚地看到「for語句等重的巢狀語句的執行順序」了
'**1:
private sub command1_click()
for i = 1 to 4
list1.additem "i的第(" & i & ")次迴圈開始"
next k
list1.additem " j的第(" & j & ")次迴圈結束}"
next j
list1.additem "i的第(" & i & ")次迴圈結束}"
list1.additem ""
next i
print x
end sub
'**2(比以上更詳細的):
private sub command1_click()
for i = 1 to 4
list1.additem "i的第(" & i & ")次迴圈開始"
next k
list1.additem " j的第(" & j & ")次迴圈結束}"
next j
list1.additem "i的第(" & i & ")次迴圈結束}"
list1.additem ""
next i
print x
list1.additem "print x' x=" & x
end sub
'**3(具體到每一句及相關數值):
private sub command1_click()
for i = 1 to 4
list1.additem "for i = 1 to 4' (i=" & i & ")"
x = 4
list1.additem " x = 4' (x=" & x & ")"
for j = 1 to 3
list1.additem " for j = 1 to 3' (j=" & j & ")"
x = 3
list1.additem " x = 3' (x=" & x & ")"
for k = 1 to 2
list1.additem " for k = 1 to 2' (k=" & k & ")"
x = x + 6
list1.additem " x = x + 6' (x=" & x & ")"
list1.additem " next k' (k=" & k & ")"
next k
list1.additem " next j' (j=" & j & ")"
next j
list1.additem "next i' (i=" & i & ")"
list1.additem ""
next i
print x
list1.additem "print x' x=" & x
end sub
'思路:當程式執行到i迴圈後,程式試圖執行完i的每一次迴圈,
'但當它執行i的第一次時遇到了j,於是,程式又試圖執行完j的每一次迴圈,
'但當它執行j的第一次時又遇到了k,程式依然試圖執行完k的每一次迴圈,
'很幸運,直到它執行完k的第一次都沒有遇到其他迴圈結構,
'於是,它順利地執行完了k的每一次迴圈,
'因為剛才執行j的第一次,所以該執行j的第二次了,但遭遇與j的第一次一樣,
'到它執行執行完j的每一次迴圈後,就該執行i的第二次了,但遭遇與i的第一次一樣,
'程式就是這樣周而復始地執行完j的每一次迴圈的。
2樓:
你把這段**寫程序序,改為form_load事件,反覆按f8,你可以看到執行的順序。隨時把游標放在x上,都可以看到x當時的值
3樓:萍水e相逢
全亂套了!
記憶體 迴圈 裡 把 變數x的 給 修改了
加上 print 語句 自己 觀察
祝你順利
4樓:匿名使用者
首先開始i的迴圈
a設定x=4
接下來是j的迴圈開始
b設定x=3
再後面是k的迴圈,迴圈2次,分別x=x+6,最後x=3+6+6=14然後就是j的迴圈,迴圈b開始的內容3次
最後是i的迴圈,迴圈a開始的內容4次
最後x=14
vb中的optioneplicit語句有什麼作用
option explicit 語句 用於在檔案級強制對該檔案中的所有變數進行顯式宣告。option explicit 各部分說明 on 可選。啟用 option explicit 檢查。如果在 option explicit 語句後沒有指定 on 或 off,則預設為 on。off可選。禁用 op...
Vb的Call語句是什麼來的,vb中的call有什麼用???
白渡 vb裡call用來呼叫函式或者過程,不過那是過去的用法了。在vb6裡只要把過程名或者函式名寫在要執行的地方就行了,很久以前是要在前面加上call的 過程sub subpro a,b c a b end sub 函式function funpro a,b as integerfunpro a b...
C語言if巢狀if,C語言裡面if語句的巢狀看不懂
printf 請輸入a的值 scanf d a if a 10 a 0的時候,明顯符合a 10條件,但是不符合裡面巢狀的a 1條件,不做任何操作。if a 1 t 1 else t 2 printf 請輸入a的值 scanf d a if a 10 a 100,第一步驗證就不符合條件,又沒有else...