2018年2月13日 星期二

計概15-05程式語言的基本結構-02選擇結構-其他試題

【技藝競賽試題】

【C】01.下列程式執行後,a的值為何? (A)0 (B)1 (C)2 (D)4。[96技競]

Dim a, j As integer

a = 0: j = 2

If a > j Then

 a = a + 2

Else

 a = a + 1

End If

a = a * j

Print a

∵a > j → 1 > 2不成立 ∴執行a = a + 1 = 0 + 1 = 1,再執行a = a * j = 1 * 2 = 2

 

【C】02.執行下列Visual Basic程式片段,請問最後b的值為何? (A)60 (B)45 (C)10 (D)50。[98技競]

Dim a, b As Integer

a = 60: b = 45

If a < 100 Then If a < 120 Then b = 10 Else b = 50

Print b

(1)∵a < 100 → 60 < 100成立 ∴執行a < 120

(2)∵60 < 120成立 ∴b = 10

 

【C】03.在Visual Basic程式Select Case的結構中,若Case條件要判斷多個資料時,以下那種表示法有誤? (A)Case 1,2,3 To 5 (B)Case Is < 10, 11 To 15 (C)Case Is <10 Or >20 (D)Case 2,4,6,8,10。[99技競]

(C)Case Is < 10, Is > 20

 

【其他試題】

【1】01.下列BASIC程式,若執行A = 1結果為何? (1)A (2)B (3)C (4)ABC。

10 Input A → A =1

20 On A GoTo 30, 40, 50

30 Print "A": GoTo 60 → 顯示A

40 Print "B": GoTo 60

50 Print "C";

60 End → 結束

 

【1】02.在VB語法的條件敘述,下列哪一個不是單選、多選一,而是二選一的條件敘述? (1)If Then/Else (2)If Then/ElseIf (3)Select Case (4)If Then。

If Scr >= 60 Then 及格 Else 不及格

 

【1】03.如果我們需要建立條件敘述判斷成績是否及格,請問下列哪一種是最佳的條件敘述? (1)If Then/Else (2)If Then/ElseIf (3)Select Case (4)If Then。

If Scr >= 60 Then 及格 Else 不及格

 

【4】04.如果需要建立條件敘述判斷人數超過1000人時,顯示熱門商品的文字內容,沒有超過,不需任何處理,此時可以使用哪一種條件敘述? (1)If Then/Else (2)If Then/ElseIf (3)Select Case (4)If Then。

If Qty > 1000 Then 顯示熱門商品的文字內容

 

【3】05.VB的IIf()函數相當於是下列哪一種條件敘述? (1)If Then/ElseIf (2)Select Case (3)If Then/Else (4)If Then。

IIf(條件式, 資料1, 資料2)

條件式成立,傳回資料1;不成立,傳回資料2。

 

【C】06.要計算1到100間能被7整除的整數個數,並顯示其結果,則以下程式中的空格應填入什麼內容? (A)I (B)I MOD 7 (C)N (D)N - 1。[87商業]

N = 0

FOR I = 1 TO 100

 IF I MOD 7 = 0 THEN

  N = N + 1

 END IF

NEXT I

PRINT "個數 ="; ____

 

【C】07.欲使下列程式輸出B,輸入的X值必須介於何項範圍? (A)79≦X≦89 (B)80≦X≦90 (C)80≦X≦89 (D)79≦X≦90。[89工設北夜]

If X <= 100 Then

 If X < 90 Then

  If X < 80 Then

   Print "C"

  Else

   Print "B"

  End If

 Else

  Print "A"

 End If

Else

 Print "ERROR"

End If

 

【綜合題】

【題目1】

10 Print "BASlC" → 顯示BASIC

20 IF COUNT = S THEN GOTO 40 → COUNT = 0,執行40 END

30 GO TO 30

40 END

求執行結果?

 

【題目2】

a = 3: b = 5: c = 4

If a > b Then → 執行3 > 5不成立

 If b > c Then Print a;

Else

 Print b; → 顯示 5

End If

Print c → 顯示 4

※顯示 5  4

 

【題目3】

A = 5

B = 10

If (A Mod 2 <> 0) Then → 執行5 Mod 2 <> 0成立

 A = A + 1 → 執行5 + 1 = 6

ElseIf (B Mod 2 = 0) Then

 B = B + 2

Else

 A = A + 2: B = B + 1

End If

Print A, B → 顯示 6             10

 

【題目4】

D = 400

If D <= 100 Then → 執行400 <= 100不成立

 Fare = D * 2

Else

 If D <= 300 Then → 執行300 <= 100不成立

  Fare = 200 + (D - 100) * 3

 Else

  Fare = 800 + (D - 300) * 5 → 執行結果800 + (400 - 300) *5 = 1300

 End If

End If

Print Fare → 顯示 1300

 

【題目5】

X = 1: Y = 2: Z = 3

X = Y: Y = Z: Z = X → X = 2, Y = 3, Z = 2

If X + Z > Y Then → 2 + 2 > 3成立

 Y = Z: Z = X: X = Y → X = 2, Y = 2, Z = 2

 If X + Y = Y * Z Then → 2 + 2 = 2 * 2成立

  Print "A" → 顯示A

 Else

  Print "B"

 End If

Else

 Z = X: X = Y: Y = Z

 If Y + Z = X Then

  Print "C"

 Else

  Print "D"

 End If

End If

 

【題目6】

A = 5: B = 3: C = 1: n = 3

X = (A * B + n ^ 2 + C) Mod 4 → X=(5 * 3 + 3 ^ 2 + 1) Mod 4 = 25 Mod 4 = 1

Select Case X

 Case 1: Print A → 顯示 5

 Case 2: Print B

 Case 3: Print C

 Case 4: Print D

End Select

※Mod求餘數

 

【題目7】

GR = 1

Select Case GR

 Case 1: GR = GR + 2 → GR = 1 + 2 = 3

 Case 2: GR = GR + 3

 Case Else: GR = GR + 6

End Select

Print GR → 顯示 3

 

【題目8】

Dim S As Integer

S = InputBox("輸入一數 S=", , 8)  '按下確定 → S = 8

Select Case S

 Case 2, 3, 5: K = S * 2

 Case 2, 4, 6: K = S * 3

 Case 9, 10: K = S * 5

 Case Else: K = S → K = 8

End Select

Print K → 顯示 8

 

【題目9】

X = 5 \ 2 → 整數除法,X = 2

Select Case X

 Case 1

  Print small

 Case 2

  Print medium → 顯示medium,但medium沒有值

 Case Else

  Print large

End Select

沒有留言:

張貼留言

注意:只有此網誌的成員可以留言。