1樓:煙花坑
private sub command1_click()』點選按鈕執行下面的語句
x = 1'x的初值為1。
do while x <= 10 '當滿足x<=10的時候都會執行一次do while 和 loop之間的語句,執行完一次再判斷x與10的關係,如果還滿足x<=10就再執行一次do while 和 loop之間的語句,否則退出迴圈向下執
行。if x mod 7 = 0 then '如果x除以7的餘數為0(x為7的倍數),那麼執行 y=x+6語句,也就是y的值為x+6的值。
y = x + 6
else '如果x不是7的倍數則執行z=x語句,也就是把x的值給z。
z = x
end if 』結束if 條件語句
x = x + z '把x和z的值相加再賦值給x。
loop'結束 do while 迴圈語句。
print x, y, z '迴圈完畢列印x,y,z的值
end sub 』結束過程
下面我們來運算一下,
x的初值為1
x=1 滿足x <= 10,又x不是7的倍數,所以執行z=x=1,再執行x=x+z=2,那麼現在第一個迴圈完了,判斷x <= 10是否成立,顯然x=2滿足條件,所以再迴圈。
x=2 滿足x <= 10,又x不是7的倍數,所以執行z=x=2,再執行x=x+z=4,那麼現在第一個迴圈完了,判斷x <= 10是否成立,顯然x=4滿足條件,所以再迴圈。
x=4 滿足x <= 10,又x不是7的倍數,所以執行z=x=4,再執行x=x+z=8,那麼現在第一個迴圈完了,判斷x <= 10是否成立,顯然x=8滿足條件,所以再迴圈。
x=8 滿足x <= 10,又x不是7的倍數,所以執行z=x=8,再執行x=x+z=16,那麼現在第一個迴圈完了,判斷x <= 10是否成立,顯然x=16不滿足條件,所以退出迴圈,執行print x,y,z
x的值為16,可以發現y=x+6這個語句一直沒有執行過,所以y的值為空值,z的值為8,因此答案是 16 8
private sub command1_click()'點選按鈕執行下面的語句
for x = 5 to 1 step -1』最外層迴圈的開始,當x的值為5,4,3,2,1時,都執行一次for x = 5 to 1 step -1與 next x之間的語句。
for y = 1 to 6 - x'第二層迴圈的開始,當x的值為5時,6-x=1,所以當x=5的時候print tab(y + 5); "*"只會執行一次,以此類推,x=4時,print tab(y + 5); "*"執行2次,分別是y=1,和y=2時候執
行,.........,直到x=1,6-x=5,執行print tab(y + 5); "*"5次。
print tab(y + 5); "*"'列印y+5個空格,再緊跟其後列印一個*。
next y 』以上與for y = 1 to 6 - x之間的語句屬於第二層迴圈。
print'當第二層迴圈完畢後,都會列印一個空行。
next x』以上與 for x = 5 to 1 step -1之間的語句屬於第一層迴圈。
end sub』結束過程
下面我們來運算一下,
當x=5時,y=1,執行print tab(1 + 5); "*",列印6個空格和第一個星號。
第二層迴圈完畢,執行print列印一個空行
當x=4時,y=1,執行print tab(1 + 5); "*",列印6個空格和第一個星號。
y=2,執行print tab(2 + 5); "*",列印7個空格和第一個星號。
第二層迴圈完畢,執行print列印一個空行
當x=3時,y=1,執行print tab(1 + 5); "*",列印6個空格和第一個星號。
y=2,執行print tab(2 + 5); "*",列印7個空格和第一個星號。
y=3,執行print tab(3 + 5); "*",列印8個空格和第一個星號。
第二層迴圈完畢,執行print列印一個空行
當x=2時,y=1,執行print tab(1 + 5); "*",列印6個空格和第一個星號。
y=2,執行print tab(2 + 5); "*",列印7個空格和第一個星號。
y=3,執行print tab(3 + 5); "*",列印8個空格和第一個星號。
y=4,執行print tab(3 + 5); "*",列印9個空格和第一個星號。
第二層迴圈完畢,執行print列印一個空行
當x=1時,y=1,執行print tab(1 + 5); "*",列印6個空格和第一個星號。
y=2,執行print tab(2 + 5); "*",列印7個空格和第一個星號。
y=3,執行print tab(3 + 5); "*",列印8個空格和第一個星號。
y=4,執行print tab(4 + 5); "*",列印9個空格和第一個星號。
y=4,執行print tab(5 + 5); "*",列印1-個空格和第一個星號。
程式執行完畢,所以答案是這樣的。
option explicit'這句話的意思是下面的所有變數必須先定義才能使用。
private sub command1_click()'點選按鈕執行下面的語句
static s as integer '宣告s為整形靜態變數。(靜態變數的好處是不會隨著按鈕的點選而重新復原s的值,是不復原而不是不改變!)
dim i as integer』宣告i為整形變數。(與上面的static不同是,i的值會隨著每次點選按鈕後而重新復原)
s = 1's的初值是1
for i = 1 to 5『迴圈的開始,當i分別為1,2,3,4,5的時候分別執行s = s * i語句。
s = s * i』將s*i的重新賦值給s
next i'下一個i。
print s』迴圈完畢後列印出s的值。
end sub 『結束過程
下面我們來運算一下,
s的初值為1
i=1時,s=s*i=1*1=1
i=2時,s=s*i=1*2=2
i=3時,s=s*i=2*3=6
i=4時,s=s*i=6*4=24
i=5時,s=s*i=24*5=120
最後s的值為120,所以結果是120.
(其實這個過程就是計算5!,5!=120)
2樓:龖軒
1.x,y,z,的值變換過程為:
1,0,1
2,0,2
4,0,4
8,0,8
16,0,8
當x=16時,退出迴圈,y和z不會再改變。
3. x,s的值變換過程為:
1,12,2
3,6,
4,24
5,120
最後輸出s=120
問幾個簡單的英語問題,問幾個簡單的英語問題
晝若黑夜 global warming 全球變暖 是英語中的專有名詞,因此不用加the suffer from 疾病 失敗 悲傷 著重是是折磨,帶來苦痛 suffer 疾病 損失 著重指經歷,有過。suffer可以作及物動詞,也可作不及物動詞,作不及物動詞時,跟上from,後面跟的動作是持續性的。作...
超簡單的VB問題
private sub form load label.caption 100 end sub private sub command1 click label.caption str val label.caption 1 end sub 或者改為 dim a as integer private...
問幾個簡單的英語問題,幾個英語問題
卷芬芬 連詞成句1 are they washing clothings?2 when is alice going to opera?3 they are in shanghai visiting their friends 4 thank you for your postcard from n...