2026全国信息素养大赛:python数字守艺人(五)

1. 您的姓名:
2. 运行以下程序,输出结果是()
a = [5, 3, 8, 1, 2]
a.sort()
print(a[2])
3. 下列关于排序算法说法正确的是()
4. 运行以下二分查找程序,输出为()
def find(x):
    a = [1,3,5,7,9]
    l, r = 0, 4
    while l <= r:
        mid = (l + r) // 2
        if a[mid] == x:
            return mid
        elif a[mid] < x:
            l = mid + 1
        else:
            r = mid - 1
    return -1
print(find(5))
5. 运行以下程序,输出结果是()
def craft(x):
    if x < 2:
        return 1
    return x * craft(x-1)
print(craft(4))
6. 运行以下双重循环,s 的值为()
s = 0
for i in range(1, 4):
    for j in range(1, i+1):
        s += i + j
print(s)
7. 对列表 [9,7,5,3,1] 进行升序冒泡,第一趟结束后列表是()
8. 二分查找要求列表必须是()
9. 运行以下程序,输出为()
AArtist=[{"id":1,"val":10},{"id":2,"val":20}]
print(artist[0]["val"] + artist[1]["id"])
10. 运行以下程序,输出为()
cnt = 0
for i in range(2,5):
    for j in range(1,4):
        if i % j == 0:
            cnt += 1
print(cnt)
11. 下列属于选择排序核心思想的是()
12. 运行以下二分程序,输出为()
a = [2,4,6,8,10]
l, r = 0, 4
while l < r:
    mid = (l + r + 1) // 2
    if a[mid] <= 6:
        l = mid
    else:
        r = mid - 1
print(l)
13. 关于 Python 函数,说法错误的是()
14. 运行以下程序,输出为()
a = [[1,2,3],[4,5,6],[7,8,9]]
s = 0
for i in range(3):
    for j in range(3):
        if i == j:
            s += a[i][j]
print(s)
15. 运行以下程序,输出为()
def f(a, b): 
     return max(a, b)
print(f(f(2,5),3))
16. 运行以下程序,输出为()
a = [5, 1, 4, 2, 3]
for i in range(len(a)-1):
    for j in range(len(a)-1-i):
        if a[j] > a[j+1]:
            a[j], a[j+1] = a[j+1], a[j]
print(a[3])
17. 冒泡排序和选择排序的时间复杂度都是O(n²)。
18. 二分查找只能在有序列表中使用。
19. 字典可以用来存储数字守艺人的编号、姓名、技艺值。
20. Python 递归深度过大会报错 RecursionError。
21. 双重循环的执行次数一定等于外层次数 × 内层次数。
更多问卷 复制此问卷