万卷网> 电子学会考级 >Python等级考试 > 2022年9月电子学会青少年软件编程(Python三级)等级考试试卷

2022年9月电子学会青少年软件编程(Python三级)等级考试试卷
操作/编程 三级 2022 2022-11-04 15:22:37 85

一、编程题

1.

标准考试答题卡一般采用2B铅笔填涂,填涂好的答题卡经过扫描后得到相应的数字化图像,再通过光学识别,完成答题卡信息数据的采集、分析与统计。计算机判断答题卡中信息点被填涂的标准是灰度值小于132为黑色,灰度值大于等于132为白色。灰度值计算公式:灰度值=0.299×红色分量(R)+0.587×绿色分量(G)+0.114×蓝色分量(B),若分别输入n个信息点的RGB颜色值,则其判断程序如下:  

n=int(input("请输入信息点个数:"))

count=0

for i in range(1,n+1):

    R=int(input(”请输入红色分量:”)) 

      ①   

    B= int(input(”请输入蓝色分量:”)) 

    Gray_scale=   ②   

    if    ③   :

        print(“黑色”) 

        count=count+1

    else: 

         print(“白色”) 

print("黑色像素总共有:"+   ④   +"个")

2.

小敏想用二分法对关键字14进行查找,请你帮她补全代码。

lst=[3,12,7,45,9,10,31,90,1,23,14,52]

      ①      

key=14

n=len(a)

i,j=0,n-1

flag=-1

while       ②      :

    mid=(i+j)//2

    if key==a[mid]:

        flag=mid

        break

    elif key>a[mid]:

              ③      

    else:

        j=mid-1

if       ④      :

    print(str(key)+'没找到!')

else:

    print(str(key)+'已找到!')

3.

如下图有一个名为“book.csv”的文件,小明想计算所有库存书籍的总价,于是编写了下面代码。请将红色①②处的代码补充完整。

b = 0

s = 0

with open('/data/book.csv', 'r', encoding='utf-8') as f:

    for line in f.    ①    ():

        a = line.strip("\n").split(",")

        b = b+1

        if b >1: # 第一行是标题,所以从第二行开始计算

            s = s +   int(a[1]) *    ②     

print('总价:' , s)

公众号
客服 反馈
顶部