Python程式設計學科模擬試題
1. 執行以下 Python 程式片段,其結果為何?
a = -5
b = 11
print(((a & b) ^ (a | b)) % 4)
(A) 0 (B) 1 (C) 2 (D) 3
2. 執行以下 Python 程式片段,其結果為何?
x = 0x5A
y = 0x3C
result = (x ^ y) >> 2 << 1
print(result % 4)
(A) 0 (B) 1 (C) 2 (D) 3
3. 執行以下 Python 程式片段,其結果為何?
total = 0
for i in range(1, 6):
for j in range(5, i, -1):
for k in range(0, j, 2):
total += 1
print(total % 4)
(A) 0 (B) 1 (C) 2 (D) 3
4. 執行以下 Python 程式片段,其結果為何?
count = 0
for i in range(1, 20):
if i % 2 == 0 or i % 3 == 0:
if i % 6 != 0:
count += i
print(count % 4)
(A) 0 (B) 1 (C) 2 (D) 3
5. 執行以下 Python 程式片段,其結果為何?
def solve(n):
if n <= 1:
return 1
if n % 2 == 0:
return solve(n // 2) + 1
else:
return solve(n - 1) + solve(n - 2)
print(solve(6) % 4)
(A) 0 (B) 1 (C) 2 (D) 3
6. 執行以下 Python 程式片段,其結果為何?
memo = {}
def f(x, y):
if (x, y) in memo: return memo[(x, y)]
if x == 0 or y == 0: return 1
memo[(x, y)] = f(x - 1, y) + f(x, y - 1)
return memo[(x, y)]
print(f(3, 3) % 4)
(A) 0 (B) 1 (C) 2 (D) 3
7. 執行以下 Python 程式片段,其結果為何?
lst = [[i * j for j in range(4)] for i in range(4)]
ans = sum([lst[i][3 - i] for i in range(4)])
print(ans % 4)
(A) 0 (B) 1 (C) 2 (D) 3
8. 執行以下 Python 程式片段,其結果為何?
s = "AByzCDxwEF"
res = s[1:8:2] + s[-2:-9:-3]
print(len(res) % 4)
(A) 0 (B) 1 (C) 2 (D) 3
9. 執行以下 Python 程式片段,其結果為何?
a, b = 104, 48
while b > 0:
a, b = b, a % b
print(a % 4)
(A) 0 (B) 1 (C) 2 (D) 3
10. 執行以下 Python 程式片段,其結果為何?
data = [3, 7, 11, 15, 19, 23, 27, 31, 35]
target = 25
low, high = 0, len(data) - 1
count = 0
while low <= high:
count += 1
mid = (low + high) // 2
if data[mid] == target:
break
elif data[mid] < target:
low = mid + 1
else:
high = mid - 1
print((count + low) % 4)
(A) 0 (B) 1 (C) 2 (D) 3
11. 執行以下 Python 程式片段,其結果為何?
text = "ABABABABC"
pattern = "ABABC"
count = 0
for i in range(len(text) - len(pattern) + 1):
if text[i:i+len(pattern)] == pattern:
count += i
print(count % 4)
(A) 0 (B) 1 (C) 2 (D) 3
12. 執行以下 Python 程式片段,其結果為何?
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
rotated = [[matrix[j][i] for j in range(3)] for i in range(3)]
print(rotated[1][2] % 4)
(A) 0 (B) 1 (C) 2 (D) 3
13. 執行以下 Python 程式片段,其結果為何?
x = 1
for i in range(1, 5):
x = (x << 1) ^ i
print(x % 4)
(A) 0 (B) 1 (C) 2 (D) 3
14. 執行以下 Python 程式片段,其結果為何?
def check(n):
s = 0
for i in range(1, n):
if n % i == 0:
s += i
return s == n
ans = 0
for i in range(1, 30):
if check(i):
ans += i
print(ans % 4)
(A) 0 (B) 1 (C) 2 (D) 3
15. 執行以下 Python 程式片段,其結果為何?
a = [1, 2, 3]
b = a
c = a.copy()
a[0] = 5
b[1] = 6
c[2] = 7
print((sum(a) + sum(b) + sum(c)) % 4)
(A) 0 (B) 1 (C) 2 (D) 3
16. 執行以下 Python 程式片段,其結果為何?
arr = [12, 34, 54, 2, 3]
n = len(arr)
for i in range(n):
for j in range(0, n-i-1):
if arr[j] > arr[j+1]:
arr[j], arr[j+1] = arr[j+1], arr[j]
print(arr[2] % 4)
(A) 0 (B) 1 (C) 2 (D) 3
17. 執行以下 Python 程式片段,其結果為何?
def g(n):
val = 0
while n > 0:
val += n & 1
n >>= 1
return val
total = 0
for i in range(1, 8):
total += g(i)
print(total % 4)
(A) 0 (B) 1 (C) 2 (D) 3
18. 執行以下 Python 程式片段,其結果為何?
vals = [x for x in range(1, 50) if x % 3 == 0 and x % 5 != 0]
print(len(vals) % 4)
(A) 0 (B) 1 (C) 2 (D) 3
19. 執行以下 Python 程式片段,其結果為何?
a = [1, 2, 3, 4, 5]
b = [2, 4, 6, 8, 10]
c = [x for x in a if x in b]
d = [x for x in a if x not in b]
print((sum(c) * sum(d)) % 4)
(A) 0 (B) 1 (C) 2 (D) 3
20. 執行以下 Python 程式片段,其結果為何?
my_dict = {'a': 10, 'b': 20, 'c': 30}
for key in list(my_dict.keys()):
my_dict[key * 2] = my_dict[key] * 2
print(len(my_dict) % 4)
(A) 0 (B) 1 (C) 2 (D) 3
21. 執行以下 Python 程式片段,其結果為何?
s = 0
i = 1
while i * i <= 50:
j = 1
while j * j <= i:
s += 1
j += 1
i += 1
print(s % 4)
(A) 0 (B) 1 (C) 2 (D) 3
22. 執行以下 Python 程式片段,其結果為何?
def verify(s):
stack = [ ]
for char in s:
if char == '(':
stack.append(char)
elif char == ')':
if not stack: return False
stack.pop()
return len(stack) == 0
test_str = "(()())(())"
print(1 if verify(test_str) else 0)
(A) 0 (B) 1 (C) 2 (D) 3
23. 執行以下 Python 程式片段,其結果為何?
items = [5, 2, 9, 1, 5, 6]
pivot = items[0]
less = [x for x in items[1:] if x <= pivot]
greater = [x for x in items[1:] if x > pivot]
print((len(less) - len(greater)) % 4)
(A) 0 (B) 1 (C) 2 (D) 3
24. 執行以下 Python 程式片段,其結果為何?
p, q = True, False
r = True
ans1 = (p or q) and (not r)
ans2 = (p and not q) or r
print(f"{int(ans1)}{int(ans2)}")
(A) 00 (B) 01 (C) 10 (D) 11
25. 執行以下 Python 程式片段,其結果為何?
v = 100
for i in range(1, 4):
v //= i
print(v % 4)
(A) 0 (B) 1 (C) 2 (D) 3
