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

2021年12月电子学会青少年软件编程(Python三级)等级考试试卷
操作/编程 三级 2021 2022-11-01 19:28:06 79

一、编程题

1.

小白兔们每天早上都到草坪上做早操。做操前,首先要按照身高由矮到高排个队,下列代码实现了排队的功能。首先读取小白兔的只数,然后读取每只小白兔的身高信息,进行由矮到高的处理,最后输出排好队的每只小白兔的身高,请你补全代码。

n = int(input('请输入兔子的总只数:'))

a = []

for i in range(n):

    x = float(input('请输入身高'))

    a.append(  ①  )

a.    ②   

for i in     ③   :

    print(a[i])

2.

请读取文件IP.txt的数据,数据内容如下图显示:

文件中每一行存储一个IP地址,下列代码实现了读取数据,每次读取一行数据,都删除了行末的换行符,最后逆序输出文件中的每行IP地址,请你补全代码。

输出参考如下:

49.97.132.119

32.33.23.232

112.114.44.44

with open('  ①  ', 'r') as f:

    list = f.readlines()

for i in range(0, len(list)):

    list[i] = list[i].strip('  ②  ')

for i in range(    ③  ):

    print(list[i])

f.close()

3.

n个灯排成一排,开始时都是关着的。现进行如下操作: 所有电灯的按钮按动一次;所有编号为2的倍数的电灯按钮按动一次;所有编号为3的倍数的电灯的按钮按动一次; …… 所有编号为n-1的倍数的电灯的按钮按动一次;所有编号为n的倍数的电灯的按钮按动一次。 最后请统计有多少只电灯是亮的。编写程序实现上述功能,或补全代码。

n=int(input())

       a=[]

for i in range(  ①   ):

     a.append(-1)

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

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

      if(      ②     ) == 0:

        a[j] =     ③     * -1

s=0

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

   if (a[i] ==     ④    ):

      s=s+1

print(     ⑤    )

公众号
客服 反馈
顶部