跳到主要內容
技藝競賽 / 學科模擬練習試題二

Python程式設計學科模擬試題開發自編

一、 基礎運算與流程控制

1. 執行以下 Python 程式片段,其結果為何?

x = 7; y = 2

print((x ** y) // 5 % 4)

(A) 0 (B) 1 (C) 2 (D) 3

2. 執行以下 Python 程式片段,其結果為何?

a = [2, 4, 6, 8]

b = [1, 2, 1, 2]

total = 0

for i in range(4):

    total += a[i] // b[i]

print(total % 4)

(A) 0 (B) 1 (C) 2 (D) 3

3. 執行以下 Python 程式片段,其結果為何?

count = 0

for i in range(2, 5):

    for j in range(i):

        count += 1

print(count % 4)

(A) 1 (B) 2 (C) 3 (D) 0

4. 執行以下 Python 程式片段,其結果為何?

a = 15; b = 4

while a >= b:

    a -= b

print(a % 4)

(A) 1 (B) 2 (C) 3 (D) 0

5. 執行以下 Python 程式片段,其結果為何?

a, b = 10, 3

res = 0

while a > 0:

    res += a % b

    a -= 2

print(res % 4)

(A) 0 (B) 1 (C) 2 (D) 3


二、 函數與遞迴

6. 執行以下 Python 程式片段,其結果為何?

def func(n):

    if n <= 1: return 1

    return n * func(n-1)

print(func(4) % 4)

(A) 0 (B) 1 (C) 2 (D) 3

7. 執行以下 Python 程式片段,其結果為何?

def check(x):

    if x % 2 == 0: return x // 2

    else: return x * 3

print(check(check(3)) % 4)

(A) 1 (B) 2 (C) 3 (D) 0

8. 執行以下 Python 程式片段,其結果為何?

def mystery(n):

    if n == 0: return 0

    return (n % 10) + mystery(n // 10)

print(mystery(123) % 4)

(A) 1 (B) 2 (C) 3 (D) 0

 


三、 字串處理與串列生成式

9. 執行以下 Python 程式片段,其結果為何?

s = "Python"

res = s[::-1][1:4]

print(len(res) % 4)

(A) 1 (B) 2 (C) 3 (D) 0

10. 執行以下 Python 程式片段,其結果為何?

vals = [i for i in range(1, 10) if i % 3 == 0]

print(sum(vals) % 4)

(A) 2 (B) 3 (C) 0 (D) 1

11. 執行以下 Python 程式片段,輸出為何?

txt = "level"

print('YES' if txt == txt[::-1] else 'NO', end=" ")

txt2 = "apple"

print('YES' if txt2 == txt2[::-1] else 'NO')

(A) YES YES (B) NO NO (C) YES NO (D) NO YES


四、 位元運算與邏輯判斷

12. 執行以下 Python 程式片段,其結果為何?

x = 12 # 二進制 1100

y = 5  # 二進制 0101

print((x & y) % 4)

(A) 0 (B) 1 (C) 2 (D) 3

13. 執行以下 Python 程式片段,其結果為何?

a = 8

res = (a >> 2) + (a << 1)

print(res % 4)

(A) 2 (B) 3 (C) 0 (D) 1

14. 執行以下 Python 程式片段,其結果為何?

a, b = 15, 20

c1 = (a > 10 and b < 25)

c2 = (a > 20 or b == 20)

print(f"{c1} {c2}")

(A) True True (B) False False (C) True False (D) False True


五、 進階演算法與資料結構

15. 執行以下 Python 程式片段,其結果為何?

data = [10, 20, 30, 40, 50]

avg = sum(data) / len(data)

res = [x for x in data if x > avg]

print(len(res) % 4)

(A) 0 (B) 1 (C) 2 (D) 3

16. 執行以下 Python 程式片段,其結果為何?

a = [1, 3, 5]

b = [2, 4, 6]

c = [x + y for x, y in zip(a, b) if (x+y) % 2 == 0]

print(len(c) % 4)

(A) 0 (B) 1 (C) 2 (D) 3

17. 執行以下 Python 程式片段(費氏數列變體),其結果為何?

dp = [0] * 6

dp[0], dp[1] = 1, 1

for i in range(2, 6):

    dp[i] = dp[i-1] + dp[i-2]

print(dp[5] % 4)

(A) 0 (B) 1 (C) 2 (D) 3

18. 執行以下 Python 程式片段(二維陣列),其結果為何?

mat = [[i*j for j in range(3)] for i in range(3)]

print(mat[2][2] % 4)

(A) 0 (B) 1 (C) 2 (D) 3

19. 執行以下 Python 程式片段,其結果為何?

total = 0

for i in range(1, 4):

    for j in range(1, 4):

        if i == j: continue

        total += 1

print(total % 4)

(A) 1 (B) 2 (C) 3 (D) 0

20. 執行以下 Python 程式片段,其結果為何?

s = {1, 2, 3}

s.add(2)

s.update([3, 4, 5])

print(len(s) % 4)

(A) 1 (B) 2 (C) 3 (D) 0


六、 綜合邏輯與數學

21. 執行以下 Python 程式片段,其結果為何?

n = 10

res = n * (n + 1) // 2

print(res % 4)

(A) 1 (B) 2 (C) 3 (D) 0

22. 執行以下 Python 程式片段,其結果為何?

a = 1

for i in range(1, 5):

    a *= i

print(a % 4)

(A) 0 (B) 1 (C) 2 (D) 3

23. 執行以下 Python 程式片段,其結果為何?

total = sum([i**2 for i in range(1, 4)])

print(total % 4)

(A) 1 (B) 2 (C) 3 (D) 0

24. 執行以下 Python 程式片段,其結果為何?

x = 5

x += x << 1

print(x % 4)

(A) 1 (B) 2 (C) 3 (D) 0

25. 執行以下 Python 程式片段,其結果為何?

def f(a, b):

    return a if a > b else b

print(f(f(5, 8), 6) % 4)

(A) 0 (B) 1 (C) 2 (D) 3

消息公佈欄

時間類別單位標題發佈點閱
跳至網頁頂部