試題詳解:
3. 因為a > 5成立,且a > 6也成立,所以執行a = a
+ 1 = 7 + 1 = 8;
因為a > 8不成立,所以執行a = a + 1 = 8 + 1 = 9,故a = 9。
6. 第一個If…Then…Else敘述:a > 1條件式不成立,執行b = b + 2 = 2 + 2 = 4;第二個If…Then…Else敘述:b > 2條件式成立,執行b = b + 1 = 4 + 1 = 5;故a = 1、b = 5。
7. 因為(A > B) And (C > B) → (8 > 7) And (6
> 7) → False,即不成立,且(A
<> D) Or (B >= C) →(8 <> 5) Or (7
>= 6) → True,即成立,所以執行MsgBox("20")。
8. If
a < 100 Then If a < 120 Then b = 10 Else b = 50
→If 60 < 100 Then
If 60 < 120 Then b = 10 Else b = 50;
因為60 < 100成立,且60 < 120成立,所以執行b = 10。
9. Case
條件式須使用逗號(,)來表示「或」。
10. B = Z / (Y / 100) ^ 2 =
56.25 / (1.5) ^ 2 = 56.25 / 2.25 = 25,因為(X Mod 2 <>
0)成立,且B < 26成立,所以執行TextBox1.Text = "ma"。
11. 5
Mod 2 = 1,因為Case 1 成立,所以執行MsgBox("s")。
13. 若Select Case敘述同時有多個條件式成立,僅執行第1個條件式成立的程式區塊,所以執行
y = x * x = 6 *
6 = 36。
14. 因為A > B → 2 > 4 不成立,且C > D
→
6 > 8 不成立,
所以執行X = A − D * B + C
= 2 − 8 * 4 + 6 = −24。
15. 在Visual Basic 中,並沒有Exit If語法。
19. 因為y > 15 成立,所以執行x = x + y = 5 + 25 = 30,即離開條件敘述,故x = 30、y = 25。
20. score = 60,因為score <= 80成立,繼續執行下方的If條件敘述;因為score >= 70不成立,故執行MsgBox("Grade
B")。
21. x = 5、y = 3、z = 4、n = 4,因為y < z → 3 < 4 成立,且x < y → 5 < 3、x < z → 5 < 4 皆不成立,所以n值不變,依舊是n = 4。
22. Int(Rnd() * 10)會隨機產生介於0~9之間的整數亂數,score = Int(Rnd() * 10) + 20 表示變數score的值會介於20~29 之間,所以執行Case
20 To 29 : MsgBox("Y")。
23. X
= C \ (B \ 10) ^ 2 = 12 \ (15 \ 10) ^ 2 = 12 \ 1 ^ 2 = 12 \ 1 = 12;
因為A Mod 2 <> 0 → 1 Mod 2 <> 0 成立,且X < 12不成立,所以執行MsgBox("B")。
24. 因為Case Is >= 5, Is <= −5成立,執行y = x ^ 2 − 80 =
12 ^ 2 − 80 = 144 − 80 = 64。