2024年NOC大赛软件创意编程Python初中组初赛模拟真题
剩余时间 --:--:--
单选题 共 20 题
1.
下面的程序,会无限循环下去的是( )
2.

执行完下面代码后,输出的结果为( )

ls = [6, 1, 8, 6, 9, 6]
n = len(ls)
for i in range(n):
    for j in range(i+1,n):
        if ls[j]>ls[i]:
            tmp = ls[i]
            ls[i] = ls[j]
            ls[j] = tmp
print(ls)
3.

使用字典统计字符串中每个字符出现的次数,横线上应该填写的代码是

dic = {}
for c in 'an apple a day keeps the doctor away':
    dic[c] = __________
print(dic)
4.

阅读下面的代码,正确的输出是( )

x = ['N','O','C']
for i in x:
    x.append(i.lower())
print(x)
5.

阅读下面程序,假设键盘输入666,正确的输出是( )

number = input()
str(number)
int(number)
print(number+number)
6.

某位初出茅庐的python初学者写出如下代码,程序执行后输出结果为

m = 2
if m//3 != 0:
    print(m,'不能被3整除')
else:
    print(m,'能被3整除')
7.
已知字符串s='? an you ?an a ?an as a ?anner ?an?an a ?an'为被破坏的英文绕口令,想要复原绕口令,就需要将字符串中的'?'替换为字母'c',能实现这个功能的代码是( )
8.
python表达式8-3**2%5( )
9.

阅读以下程序,请问运行结束后会显示的是( )

x, y, z = 10, 20, 40
x, y = z/x, z-y
z = x*y
print(z)
10.
在Python中,专门用于生成随机数的库是( )
11.
现有一个名为data的字典,要获得键为'name'所对应的值,正确的代码是( )
12.
对列表中的元素进行排序,应该使用哪个Python内置函数( )
13.
想要在python中打开文件,在文件末尾添加新的内容,横线上应该填写的是( )
14.
在Python中,以下哪个表达式可以将字符串'123'中的每个字符转换为对应的ASCII码值,并以列表形式返回?( )
15.

下列Python代码,在输入5时输出'Five'的是( )

16.

执行下面代码,最终输出的结果是( )

m, n = 6, 88
def fn(n):
    global m
    m += 100
    n = 100
    return m
print(m,fn(n),n)
17.

已知字符串s='Data Science',提取单词'Data'的选项是( )

18.
以下不属于冯·诺依曼体系计算机组成部分的是( ) 
19.

已知变量赋值如下,以下选项中,结果为False的是( )

x = 15
y = 12
20.
Python中的列表可以同时保存多个数据,下列数据可以作为列表中的元素保存的是( )
多选题 共 5 题
1.

(多选)阅读下面代码,说法正确的是?

def transform(myls):
    tmp_ls = []
    for num in myls:
        if num > 0 and num % 2 == 0:
            tmp_ls.append(num ** 2)
        elif num > 0 and num % 2 != 0:
            tmp_ls.append(num + 3)
        elif num < 0:
            tmp_ls.append(num * -1)
    return tmp_ls
    
ls = [-2,2,3,-4,0,5,6]
print(transform(ls))
2.

(多选)列表中存储了中国神话中的五大神龙的名字,请问执行下面程序后,输出的结果含有哪些龙?

ls = ['烛龙','蟠龙','青龙','应龙','苍龙']
for i in range(2):
    ls.pop(i)
print(ls)
3.
(多选)下面的代码执行后能输出"NOC!"的是( )
4.
以下哪些变量名是有效的( ) 
5.
(多选)导入海龟画笔库,起名为t,下列代码运行后,界面上显示正方形的是( )
判断题 共 5 题
1.

下面的程序输出的结果和原字符串一样( )

s = '上海自来水来自海上'
print(s[:-1:])
2.
表达式 'abc' in 'aaabbbccc' 的结果是True( ) 
3.
ls.pop()指令默认删除列表中的第一个元素,并返回它的值( ) 
4.

下面Python代码执行后将输出[10,15,20]( )

ls = []
for i in range(10,20,5):
        ls.append(i)
print(ls)
5.
Python字符串是不可变数据类型,一旦创建不能直接修改( )
填空题 共 10 题
1.

阅读下面代码,输出的结果是( )

ls = [x for x in range(9,0,-1)]
x = ls.index(4)
n = ls[-1] * x
print(n)
2.

阅读下面代码,输出的结果是( )

cnt = 0
for i in range(30):
    if i % 2:
        continue
    else:
        if i % 3 == 0 and i % 5 == 0:
            break
    cnt += i
print(cnt)
3.

运行以下代码,在键盘输入'NOC',则输出的结果是( )

s = input()
s1 = ''
for c in s:
    s1 = chr(ord(c)+32) + s1
print(s1)
4.

阅读下面代码,输出的结果是( )

n = len('2023,2024,2025'.split(','))
print(n)
5.

阅读下面代码,输出的结果是( )

def f(n):
    if n <= 1:
        return n
    return f(n-2)*2 - f(n-1) + n
print(f(5))
6.

以下程序,输出的结果是( )

mydict = {'小明':95,'小红':100}
score = mydict.get('小白',0)
print(score)
7.

下面程序,重复执行6次循环,横线上需要填写的1个数是__

for i in range(2024,______):
    print(i)
8.

Python面向对象程序中,定义一个类的关键字是:__

9.

Python中的列表能够存储许多数据。如下list1列表存储了许多成语,现在想要找出所有第一个字为'天'的成语,并存储到list2列表。

list1 = ['霸王别姬','天长地久','皆大欢喜',
        '两小无猜','掌上明珠','偷天换日',
        '天上人间']
list2 = []
for s in list1:
    if ______ == '天':
        list2.append(s)
print(list2)
10.

以下程序模拟了用户登录功能,当用户输入的用户名和密码分别为noc2024和123456时,输出'登入成功',否则输出'登入失败'。

username = input('请输入用户名:')
password = input('请输入密码:')
if username == 'noc2024' and password == _____:
    print('登入成功')
else:
    print('登入失败')
C++ 编辑器
输入
输出