书签 分享 收藏 举报 版权申诉 / 17
上传文档赚钱

类型2021年6月全国青少年编程等级python四级真题.docx

  • 上传人(卖家):最好的沉淀
  • 文档编号:5568754
  • 上传时间:2023-04-25
  • 格式:DOCX
  • 页数:17
  • 大小:24.37KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《2021年6月全国青少年编程等级python四级真题.docx》由用户(最好的沉淀)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    2021 全国青少年 编程 等级 python 四级真题
    资源描述:

    1、青少年软件编程(Python)等级考试试卷(四级)分数:100题数:38一、单选题(共 25 题,每题 2 分,共 50 分)1. 对自然数 1 至 n 求和,如果将递推式 f(n)=f(n-1)+n(n1)转化成递归函数,则递归出口是?( ) A.f(1)=1B.f(1)=0C.f(0)=1D.f(0)=0试题编号:20210206-xm-019 试题类型:单选题标准答案:A试题难度:较难试题解析:2. 对比两个求等差数列 1+2+n 的和的程序,其算法效率?( ) 程序 1:n=int(input() s=(1+n)*n/2 print(s)程 序 2: n=int(input() s=0

    2、for i in range(n+1): s=s+iprint(s)A. 程序 1 比程序 2 高B. 程序 2 比程序 1 高C. 一样高D. 不能判断试题编号:20210205-ppz-023 试题类型:单选题标准答案:A试题难度:一般试题解析:理解算法性能、算法效率概念3. 若以下程序段的运行结果为“*#*#*”,则空格(1)、(2)处填写结果不可能为?( )def f(n):s=for i in range(1),n): if i % 2=1:s=s+*else:return ss=s+#print(f(2)A.3,8B.3,7C.9,14D.1,6试题编号:20210130-lfy-

    3、012 试题类型:单选题标准答案:B试题难度:容易试题解析:当变量 i 为奇数时,s 累计符号“*”,所以 range 函数的初始值为奇数,又因为总共输出了 5 个符号,所以 range 函数的终值为初始值+5。4. 有一对兔子,从出生后第 3 个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一量是多少。如果采用递归算法来编程,则核心的递归逻辑应该是?( )A.f(n) =n*f(n-1)B.f(n) = f(n-1)+nC.f(n) = f(n-1)+f(n-2)D.f(n) = f(n-1)+ (n-1)f(n-2)试题编号:20210206-xm-022 试题类型:单选题标准答案

    4、:C试题难度:较难试题解析:只有 C 是符合题意的递推式。5. 下列程序使用了哪种算法?( )def fact(n):if n=0:return 1 else:return n*fact(n-1)A. 递推B. 递归C. 排序D. 分治试题编号:20210128-CJ-019试题类型:单选题标准答案:B试题难度:一般试题解析:6. 以下几项关于函数的说法,错误的是?( )A. 函数是一段具有特定功能的语句组B. 调用函数时,参数传入的顺序必须与定义时保持一致C. 在一个程序中,函数的定义可以放在函数调用代码之后D. 使用函数可以增加代码重复利用率,还可以降低维护难度试题编号:20210129-

    5、TR-001试题类型:单选题标准答案:C试题难度:一般试题解析:函数是一段具有特定功能的语句组,使用函数能够提高代码的重复利用率,降低维护难度;调用函数时,参数传入的数量、顺序必须与定义时一致;函数必须定义在前,才可以调用。7. 下面关于递归的描述不正确的是?( )A. 递归思想是将大型复杂的问题转化为一个与原问题相似的规模较小的问题来求解B. 递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,它不是分治策略的具体体现C. 递归必须有终止递归的条件D. 递归是在过程或函数里调用自身试题编号:20210203-fcl-03 试题类型:单选题标准答案:B试题难度:一般试题解析:递归策略

    6、只需少量的程序就可描述出解题过程所需要的多次重复计算, 它是分治策略的具体体现8. 下列哪项不是分治算法所具有的特征?( )A. 该问题的规模缩小到一定的程度就可以容易地解决B. 该问题可以分解为若干个规模较小的不同问题C. 利用该问题分解出的子问题的解可以合并为该问题的解D. 该问题所分解出的各个子问题是相互独立的试题编号:20210128-CJ-027试题类型:单选题标准答案:B试题难度:较难试题解析:9. 以下能正确计算出“1!+3!+5!”值(n!=1x2x3xn)的自定义函数是?( ) def f():s=0t=1A. for i in range(1,6,2): t=t*is=s+

    7、t return sdef f():s=0 t=0B. for i in range(1,6,2): t=t*is=s+t return sdef f():s=0 t=1C. for i in range(1,6,2): t=t*iif i%2=1:s=s+treturn s def f():s=0t=1D. for i in range(1,6): t=t*iif i%2=1:s=s+treturn s试题编号:20210206-lfy-014 试题类型:单选题标准答案:D试题难度:较难试题解析:A 选项和 C 选项求的是 1*1+1*1*3+1*1*3*5 的值;B 选项由于 t=0,乘以

    8、任何数都等于 0,所以最终结果为 0。10. 下面关于递归算法的描述,错误的是?( )A. 任何递归程序都可以改写成非递归程序B. 定义简单,逻辑清晰C. 算法的执行效率较高D. 原问题与子问题在结构上必须相似试题编号:20210206-xm-021 试题类型:单选题标准答案:C试题难度:一般试题解析:C11. 下列关于函数的描述正确的是?( )A. 使用函数的唯一目的是减少代码的重用B. 不带 return 的函数返回值是 NoneC. 带有默认值的参数可以放在位置参数之前D. 函数可以有多个参数,参数之间使用;隔开试题编号:20210201-fcl-18 试题类型:单选题标准答案:B试题难

    9、度:一般试题解析:自定义函数中,可以有返回值,return 语句;也可以没有返回值, 不带 return 语句的,返回值是 None12. 以下程序是用什么算法思维来显示数列 1,4,7,10,13,16 ?( )a=1for i in range(6): print(a) a+=3A. 递归B. 递推C. 分治D. 枚举试题编号:20210128-CJ-020试题类型:单选题标准答案:B试题难度:容易试题解析:13. 运行下列这段程序,正确的输出结果是?( ) def f(a,b):c=a*2+b b=a return ca=5 b=100c=f(a,b)+b print(c) A.210B

    10、.225C.130D.115试题编号:20210129-TR-005试题类型:单选题标准答案:B试题难度:较难试题解析:函数的形参作用域为本函数,实参变量 b 的值没有改变,还是 100。14. 安装 wheel,wheel 用于离线安装已经下载到本地的 whl 文件,可以在命令窗口直接运行?( )A. pip listB. pip wheelC. pip unistall wheelD. pip install wheel试题编号:20210205-ppz-024 试题类型:单选题标准答案:D试题难度:一般试题解析:知道 pip、 wheel、 exe 安装方法15. 下列选项中,哪个选项调

    11、用如下函数会报错?( ) def show(numbers):for n in numbers:print(n)A.show(4,5,6)B. show(Chinese)C. show(3,4)D.show(4,5,6)试题编号:20210129-TR-013试题类型:单选题标准答案:C试题难度:一般试题解析:调用函数时参数传入,数量必须一致16. 运行下列程序,输出结果正确的是?( ) def demo(lst, k):if kstr:c=a*b print(c) return cpic(5,*#*)A.*#*#*#*#*#*B.5C.5*#*D.程序出错试题编号:20210129-lfy-

    12、004 试题类型:单选题标准答案:A试题难度:较难试题解析:Python 是动态语言,自定义函数时不需要声明与指定类型,但是在 Python3.5 之后,新增了对函数参数和返回值的类型指定和检查。即使参数输入类型与定义时不一致,实际上运行不会报错,Python 的本质还是动态语言。二、判断题(共 10 题,每题 2 分,共 20 分)26. 递归方法的运用不仅会简化主程序的设计,也会大大减少程序的代码量。正确错误试题编号:20210206-xm-026 试题类型:判断题标准答案:正确试题难度:一般试题解析:正确。递归能减少程序的代码量27. 在 Python 中定义函数时不需要声明函数的返回值

    13、类型。正确错误试题编号:20210129-TR-017试题类型:判断题标准答案:正确 试题难度:容易 试题解析:28. Python 程序是模块化架构,以.py 的文件可以作为一个模块被引用。一些 Python 爱好者和支持者开发和分享了大量扩展库(包),可以根据需要用包管理器来安装或自定义,体现了 Python 语言强大的扩展性。正确错误试题编号:20210205-ppz-035 试题类型:判断题标准答案:正确试题难度:较难试题解析:理解模块化架构和包的管理29. 通常问题的规模越大算法执行的时间就越长,算法执行时间的增长率和问题规模的增长关系,称为空间复杂度。正确错误试题编号:202102

    14、05-ppz-034 试题类型:判断题标准答案:错误试题难度:一般试题解析:时间复杂度和空间复杂度的概念,本题是时间复杂度的描述,不是空间复杂度。30. 将一个大问题分解为若干子问题,且子问题与大问题是相同的问题,就构成了递归。正确错误试题编号:20210128-CJ-025试题类型:判断题标准答案:错误 试题难度:一般试题解析:还需要满足一个条件:不能无限制地调用本身,须有个出口,化简为非递归状况处理。31. 将一个复杂的问题分解成若干个规模较小的子问题后,能不能利用分解出的子问题的解合并得到原问题的解是最关键的特征,它决定了是否可以使用分治算法。正确错误试题编号:20210123-cqf-

    15、21试题类型:判断题标准答案:正确 试题难度:一般试题解析:如果一个问题能够分解成若干个相同的规模较小的子问题,但是合并子问题的解不能得到原问题的解,就决定是该问题不能够运用分治算法求解。但是可以深度贪心算法或者动态规划算法求解。32. 已知大写字母“A”对应的 ASCII 码值为 65,变量 ch 保存输入的大写英文字母, 则语句 chr(ord(ch)+1-ord(A) % 26+ord(A)能实现大写英文字母后移一位,如 AB, BC, YZ, ZA。正确错误试题编号:20210205-lfy-009 试题类型:判断题标准答案:正确试题难度:较难试题解析:ord(x)函数的作用是返回 x

    16、 对应的 ASCII 值,chr(x)函数的作用是返回 x 对应的字符,x%y 表示 x 除以 y 取余数,已知大写英文字母 26 为一循环,所以语句“chr(ord(ch)+1-ord(A) % 26+ord(A)”能实现大写英文字母后移一位。33. 下列程序段运行后,打印结果为 9。def f():s=0for i in range(3,1,-1): if i=1:x=1 if i=2:x=2 if ismid:_ elif vsmid:last=mid-1return Nones=randint(1,100) for i in range(10) s.sort()print(s) k=i

    17、nt(input() ans=b(s,k)if_print(找到,下标是:,ans)else:print(没有找到这个数!)运行结果 1:13, 25, 27, 41, 52, 66, 67, 69, 72, 7572找到,下标是: 8运行结果 2:9, 15, 16, 19, 27, 31, 43, 64, 84, 9320没有找到这个数!试题编号:20210206-ppz-037 试题类型:编程题标准答案:参考答案:top=last:或等效答案;(2 分)top=mid+1 或等效答案;(3 分)ans!=None: 或等效答案;(3 分)试题难度:一般试题解析:参考答案:from ran

    18、dom import randint def b(s,v):top=0 last=len(s) while topsmid:top=mid+1 elif vsmid:last=mid-1 return Nones=randint(1,100) for i in range(10) s.sort()print(s) k=int(input()ans=b(s,k)if ans!=None:print(找到,下标是:,ans) else:print(没有找到这个数!)38. 有一群兔子,4 个 4 个地数余 1 个,5 个 5 个地数余 2 个,9 个 9 个地数余 7 个, 试问兔子有多少只?(请将程序补充完整)defwhileif n%5=2:breakn+=9while True:ifbreakf(16)n+=45print(n)试题编号:20210206-ppz-036 试题类型:编程题标准答案:参考答案: f(n):或等效答案;(4 分) True:或等效答案;(4 分) n%4=1:或等效答案;(4 分)试题难度:容易试题解析:函数相关概念 2 分,自定义函数的创建与调用 10 分参考答案:def f(n):while True:if n%5=2:break n+=9while True:if n%4=1:break n+=45print(n) f(16)

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:2021年6月全国青少年编程等级python四级真题.docx
    链接地址:https://www.163wenku.com/p-5568754.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库