1樓:
這段程式最後要列印出來j的值,其中的關鍵在於下面這幾句:
if a(i) = false then
a(i) = true
exit for
end if
if i = 5 then
flag = true
end if
其中易被迷惑的是:
a(i) = true
exit for
由於此時跳出迴圈,所以,下面的跳出do迴圈的語句就不會執行了if i = 5 then
flag = true
end if
因此,do迴圈還會再來一遍,也就是說,最後的答案,可能比直覺的答案要大上一些。
2樓:匿名使用者
首先,你要看do退出的條件
if i = 5 then 《==只有這個條件才能退出flag = true
end if
再看:j = j + 1
if a(i) = false then
a(i) = true
exit for
end if
j不斷的+1,那麼a(i) = false時,exit for,直接跳回了。那麼
第一次i=-1,j=1,然後就跳回了
第二次i=-1,j=2,a(-1) = true 不跳i=0,j=3,a(0) = false 跳回第三次i=-1,j=4,a(-1) = true 不跳i=0,j=5,a(0) = true 不跳i=1,j=6,a(1) = true 跳回。。。整個過程如下:
i= -1 j= 1
跳回 i= -1 j= 2
i= 0 j= 3
跳回 i= -1 j= 4
i= 0 j= 5
i= 1 j= 6
跳回 i= -1 j= 7
i= 0 j= 8
i= 1 j= 9
i= 2 j= 10
跳回 i= -1 j= 11
i= 0 j= 12
i= 1 j= 13
i= 2 j= 14
i= 3 j= 15
跳回 i= -1 j= 16
i= 0 j= 17
i= 1 j= 18
i= 2 j= 19
i= 3 j= 20
i= 4 j= 21
跳回 i= -1 j= 22
i= 0 j= 23
i= 1 j= 24
i= 2 j= 25
i= 3 j= 26
i= 4 j= 27
i= 5 j= 28
跳回 i= -1 j= 29
i= 0 j= 30
i= 1 j= 31
i= 2 j= 32
i= 3 j= 33
i= 4 j= 34
i= 5 j= 35
只有最後i=5才真正退出,已經執行了35次,所以j=35
求這個詳細過程,怎麼解啊,求這道數學題的詳細過程及解題文字步驟?
啊,這個的話我可以找個專業的人士來解答,稍後我會把解答的過程發給你。令這個公式等於o,求出x的值,然後畫圖,這是一元二次函式,開口向上,觀察圖就可以得出答案 不知道代個專業務員問問。世界上最遠的距離。不知道怎麼玩這個。元公升太貴買不起。還有意見不合理的單子發來。通一起玩鍛鍊身體。2x x 1這樣會解...
求數學高手我為什麼沒看懂這道題的問題請解釋一下
首先我說下這個題目的意思 題設是存在這樣的點p,使得s abc s abg,其中 abg是由線段ae,bf和ab為邊構成一個新的三角形,這句話的意思是 這個 abg是新的 不在上面的圖形中,只是要用這三條邊來作這個 abg,這樣就需要滿足 ae ac,bf bc 即新的 abg的e和f與g點是重合在...
求VB學習者,老師,告訴我這道題,順便解釋一下,謝謝啊
private sub command1 click dim m as integer,n as integer,p as integer m 1 n 4 p 5 print secprog p,n,m 第一步 secprog 5,4,1 end sub function firporg x as ...