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

2021年6月电子学会青少年软件编程(Python四级)等级考试试卷
操作/编程 四级 2021 2022-10-30 17:45:48 19

一、编程题

1.

有一群兔子,4个4个地数余1个,5个5个地数余2个,9个9个地数余7个,试问兔子有多少只?(请将程序补充完整)

def   ① 

    while  ② 

        if n%5==2:

            break

        n+=9


    while True:

        if  ③ 

            break

        n+=45

    print(n)

f(16)

2.

质数是一个大于1的自然数,除了1和它本身外,不能被其他自然数整除。下面的程序设计中,先自定义一个函数,用来判断一个数是否为质数。然后,通过键盘输入一个数,调用所编写的函数,判断该输入的数是否为质数。请根据上述设计思想,完成程序段中划线处的填空。

def findprime(m):

    for i in range(2,m):

        if _______①:

            return False     

        else:

            return ________ ②

n = int(input('请输入一个数:'))

if  _______③:

    print("该数是质数.") 

else:

    print("该数不是质数.")

3.

随机生成的10个在[1,100)范围内整数存入列表;输入一个待查找的整数k,运用二分法在列表中查找k,根据查找状态输出对应的结果,请将程序补充完整。

from random import randint

def b(s,v):

    top=0

    last=len(s)

    while  ①_

        mid=(top+last)//2

        if v==s[mid]:

            return mid

        elif v>s[mid]:

             ②_

        elif v<s[mid]:

            last=mid-1

    return None

s=[randint(1,100) for i in range(10)]

s.sort() 

print(s) 

k=int(input())

ans=b(s,k)

if  ③_

    print('找到,下标是:',ans)

else:

    print('没有找到这个数!')


运行结果1:

[13, 25, 27, 41, 52, 66, 67, 69, 72, 75]

72

找到,下标是: 8


运行结果2:

[9, 15, 16, 19, 27, 31, 43, 64, 84, 93]

20

没有找到这个数!

公众号
客服 反馈
顶部