NCT全国青少年编程能力等级测试python一级图文
一、选择题
1.Python程序中,已知x=2y=1,当执行语句y+=x*2y的值是(   
A.3    B.4    C.5    D.6
2.Python中,表达式a**3+b**3+c**3==100*a+10*b+c属于(
A.算术表达式    B.关系表达式    C.逻辑表达式    D.日期表达式
3.以下文本框内是一段用Python程序设计语言编写的源代码,功能是输出200以内能被17整除的最大正整数。这段源代码属于(    )。
A.程序    B.软件    C.指令    D.命令
4.Python程序中,要求s369300的值,可以采用如下代码,下列选项中的说法不正确的是(    )。
A.for循环语句中步长为3    B.语句s0应改为s1
C.语句ssi共循环执行了100    D.程序使用了循环结构
5.有如下python程序段
n=int (input("请输入n: "))
x=n ; y=0
if x>0:
    y=y+1
elif x<0:
    y=y-1
print (y)
执行上述语句,下列说法不正确的是(  )
A.若输入-1,则输出y值为-1    B.若输入0,则输出y值为-1
C.若输入1,则输出y值为1    D.若输入2,则输出y值为1
6.我们在用Python进行数据分析的时候,经常会用到pandas库中的DataFrame,这是类似于(    )的数据结构     
A.一维表格    B.二维表格    C.三维表格    D.四维表格
7.Python语句中以rR开头的字符串表示原始字符串,则printr"\nGood")的运行结果是
()
A.新行和字符串Good    B.r"\nGood"    C.\nGood    D.字符r、新行和字符串Good
8.运行下列 Python程序,结果正确的是( 
s="abcdefg"
c=len(s)  #len 求字符串长度
for i in range(0,c):
    if i<2:
          print (chr(ord(s[i])+2),end=" ") #  ord() 函数是 chr() 函数配对函数,将字符转ASCII
    else:
          print(chr(ord(s[i]) + 3),end=" ")
A.c d f g h a    B.c d f g h b    C.c d f g h i j    D.c d f g h c
9.运行下列 Python程序,结果正确是(   
a=32
b=14
c=a//b
printc
A.2.2    B.2    C.2    D.4
10.Python IDLE编辑器中书写正确的表达式( 
A.b**2-4ac    B.1/2gt2    C.pi*r^2    D.2*pi*r
11.Python中运行后,b的值是       
a=6
If a>=0       
  b=a+2       
Else       
  b=a-2       
printb
A.6    B.8    C.10    D.12
12.已知字符串变量python能在手机上运行吗x的值是“H”,字符“A”的ASCII值是65,则python表达式chr(ord(x)+2)的值是(   
A.I    B.‘J’    C.73    D.74
13.下列选项中,合法的Python变量名是(
A.print    B.speed    C.Python    D.a#2
14.我们学习了使用Python程序设计语言解决问题,Python程序设计语言属于(    )。
A.高级语言    B.自然语言    C.汇编语言    D.机器语言
15.下列哪个语句在Python中是非法的?(   
A.x=y=z=1    B.x=y=z+1    C.xy=yx    D.x+=y
二、程序填空
16.现今信息化时代,信息的传输十分迅速,足不出户便知天下事。许多社交平台都有设置本平台的热点排行榜,方便用户了解正在发生的热门事件。但社交平台数量众多,平台用户种类和数量也大不相同,导致不同平台热点的实际热度大小也不同。小钟为了确保自己知道的热点是真正的热点,于是打算用功能强大的python把各个平台的热点排行榜进行合并,形成自己的热点排行榜。
为了热点之间比较方便,小钟设置了一个热度值来衡量一个热点的热度大小,热度值越大说明这个热点的热度越高。现在小钟已经获得了如下两个平台的热度值从小到大的排行榜,正当他打算将之合并为一个从小到大的排行榜时,却被老师叫走了。于是他决定把这个小功能交给他的好朋友——你来实现,你想到2种算法,请把下列程序填写完整。
A
P10
P9
P8
P7
P6
P5
P4
P3
P2
P1
11
66
116
329
438
582
652
714
756
925
B
E10
E9
E8
E7
E6
E5
E4
E3
E2
E1
35
116
215
271
309
428
576
772
806
950
Python程序如下:
A= [1166116329438582652714756925]
B = [35116215271  5__428576772806950]
算法一:
myRank =
i = 0
j = 0
while (i < len(A) and j < len(B)):
    if (A[i] < B[j]):
      (6)______
        i += 1
    else:
        myRank.append(B[j])
        j += 1
while (i < len(A)):
    myRank.append(A[i])
    i += 1
else:
    while ((7)______):
        myRank.append(B[j])
        j += 1
print(myRank)
算法二:
myRank = [0]*(len(A)+len(B))
i = 0
j = 0
k = 0
while ((8)_____):
    k = i+j
    if (i >= len(A)):
        myRank[k] = B[j]
        j += 1
    elif (j >= len(B)):
        myRank[k] = A[i]
        i += 1
    elif ((9)_____):
        myRank[k] = A[i]
        i += 1
    else:
        myRank[k] = B[j]
        j += 1
print(myRank)
17.学校开展“奇妙的数字”研究性学习活动。张轩小组4人决定把课题定为《探秘水仙花数》。
1)张轩使用百度搜索引擎搜索到“水仙花数”是这样定义的: “水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:153 = 13+53+33,那么这个数就是一个“水仙花数”。百度属于____搜索引擎(全文,分类)
2)为了求解100--999这些数字中,哪些数字是“水仙花数”?张轩小组进行了算法设计,并使用python编写了一段程序来求解所有的“水仙花数”,程序和运行结果下图:
k是可以重新赋值的,k是变量还是常量?____程序中①处有空缺,请补充完整①处的代码。____程序中逐一验证了100999之间所有的三位数是否符合“水仙花数”的定义条件,这种算法叫做______(解析法,枚举法,递归法,二分法)。
3)在研究成果展示环节, 张轩小组可以使用什么软件制作《探秘水仙花数》的研究成果报告? (_____)
18.小强开展网上直播售货,为此购买了以下直播硬件设备:①手机②耳机③自拍杆④数码照相机⑤背景画⑥无线路由器
请回答下列问题:
1)在购买的直播硬件设备中,属于模数转换的设备是__________(多选,填序号)
2)小强选择借助某著名直播平台售货,根据直播平台要求,直播画面是1080*1920像素、24位真彩、帧频为25fps,视频压缩比为100:1,在不考虑视频传输优化的情况下,问小强家目前10Mbps的宽带__________(选填:能/不能)满足直播要求。请列式证明__________
3)小强将某一天的售货情况从平台导出,保存为文件shqk.xlsx.数据已按“流水号”升序排序,如图a所示。流水号为2019030602的售货记录中,已成交的商品类别数是__________(填写数字),该流水号的总利润是__________元(填写数字,保留1位小数)
a
4)为了快速了解各类别商品的利润,小强用python编程处理。处理的结果界面如图b所示。部分代码如下,请在①②划线处填写合适的代码。
b
import pandas as pd
import numpy as np
import matplotlib. pyplot as plt
detail=pD.read_excel (___)
print(detail)
for i in range(len(detail[:])):
if detail[‘成交与否’][i]==1:
detail[‘lirun’]=___
dg=detai1[[‘类别’, ‘lirun’]]. groupby(by=‘类别’)
print(“总利润”,detail[‘lirun’].sum())
数据可视化代码略
19.某品牌手机第一年销量为20000台,假设平均每年的销量比上一年增加68%,请问几年后能使总销量达到60000台。下面的程序能实现上述的功能,请将缺失的代码补充完整。
total= every_year=20000
year=1
while __________________ :
          every_year + = ____________
          total + = every_year
          year + = 1
print(year)
20.(最大公约数)用辗转相除法求两个正整数的最大公约数。
代码如下:
def gcd (m,n):
r     
while r!0:
mn
n