《全国青少年软件编程(Python)等级考试202203真题202203Python四级.docx》由会员分享,可在线阅读,更多相关《全国青少年软件编程(Python)等级考试202203真题202203Python四级.docx(20页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、青少年软件编程(Python)等级考试试卷(四级)分数:100 题数:38一、单项选择题(共25题,共50分).关于函数,以下选项中描述错误的选项是?()A. 函数能完成特定的功能,对函数的使用不需要了解函数内部实现原理,只要了解函数整B. 使用函数的主要目的是减低编程难度和代码重用。C. Python使用del保存字定义一个函数。D. 函数是一段具有特定功能的、可重用的语句组。试题编号:20200316-ysy-007试题类型:单项选择题标准答案:C试题难度:容易试题解析:Python使用def保存字定义一个函数。考生答案:A考生得分:0是否评分:已评分评价描述:1 . Python机器学习
2、方向的第三方库是?()A. TurtleB. TensorFlowC. PygameD. Random试题编号:20200316-ysy-011试题类型:单项选择题标准答案:B试题难度:一般试题解析:TensorFlow是人工智能领域类的深度学习库。考生答案:C考生得分:0是否评分:已评分评价描述:试题编号:20220213-ssn-018试题类型:单项选择题标准答案:C试题难度:一般试题解析:考生答案:D考生得分:0是否评分:已评分评价描述:21 .以下函数要实现5的阶乘,那么划线处应补充选项为?() def fun (i):if i=l:return 1else:return print
3、(fun (5)A. i*(iT)*(i-2)*.*2*1B. (iT) *fun (i)C. i*fun(i+l)D. i*fun(i-1)试题编号:20220213-ssn-019试题类型:单项选择题标准答案:D试题难度:一般试题解析:考生答案:D考生得分:2是否评分:已评分评价描述:22 .以下常见算法中,表达分治思想的是?()A. 解析算法B. 枚举算法C. 冒泡排序D. 对分查找试题编号:20220213-ssn-020试题类型:单项选择题标准答案:D试题难度:一般试题解析:考生答案:D考生得分:2是否评分:已评分评价描述:23 .对于序列98, 88, 76, 65, 48,24,
4、12,12,8,1,采用“对分查找”法查找8,需要查找多少次?(A. 5B. 4C. 3D. 2试题编号:20220213-ssn-021试题类型:单项选择题标准答案:C试题难度:一般试题解析:按二分查找法的规律,每次先查找中间值,进行比拟。考生答案:C考生得分:2是否评分:已评分评价描述:24 .分治法所能解决的问题一般具有以下几项特征,以下哪一项描述不正确?()A. 该问题的规模缩小到一定的程度就可以容易地解决B. 该问题可以分解为假设干个规模较小的相同问题,即该问题具有最优子结构性质C. 利用该问题分解出的子问题的解可以合并为该问题的解D. 该问题所分解出的各个子问题之间包含公共的子子问
5、题试题编号:20220213-ssn-022试题类型:单项选择题标准答案:D试题难度:一般试题解析:考生答案:D考生得分:2是否评分:已评分评价描述:25 . 一般用于安装Python第三方库的工具是?()A. importB. installc.D.setup pip试题编号:20220213-ssn-025试题类型:单项选择题标准答案:D试题难度:容易试题解析:考生答案:D考生得分:2是否评分:已评分评价描述:二、判断题(共10题,共20分).如以下图代码,运行之后,最终打印出的结果是4,请判断对错。def M(a, b = 2):return a+bprint(M(l,b=3)正确 错误
6、试题编号:20200319-LL-020试题类型:判断题标准答案:正确试题难度:一般试题解析:默认参数的值被改变了,所以将计算传入的两个参数的值,结果就是4考生答案:错误考生得分:0是否评分:已评分评价描述:26 .以下图左右两段代码运行之后,打印出的结果不相同!请判断对吗? 根据题意,该题答案为:错误.def n(a): a=a+2 return adef n(a): a=a+2 return ab=3 n(b) print(b)a=3 n(a) print(a)正确 错误试题编号:20200319-LL-025试题类型:判断题标准答案:正确试题难度:一般试题解析:第一段代码打印出的结果应该
7、是5,第二段代码变量b的值并没有被改动,打印日 考生答案:错误考生得分:2是否评分:已评分评价描述:def n(x): printC* * x ) if x = = 1:return n(x-l)n(5)错误27 .为实现以下图左边的打印效果,小明编写了如以下图右边的代码。 请问,他这代码能正确打印出左边效果来吗?*正确* 试题编号:20200319-LL-029试题类型:判断题标准答案:正确试题难度:一般试题解析:基本的递归,函数通过对自身的调用,实现每将调用参数减1,所以,此题正确。考生答案:正确考生得分:2是否评分:已评分评价描述:28 .为打印出5、4、3、2、1这个数字序列,小明编写
8、了一个递归函数,如以下图所示。 请问,他这个程序是正确的吗?def n(x):print(x)n(x-l)if x = = 1:returnn(5)正确 错误试题编号:20200319-LL-030试题类型:判断题标准答案:错误试题难度:一般试题解析:递归在判断之前,程序将永无止境,不会停止,所以,这个程序写错了。正确的2考生答案:正确考生得分:0是否评分:已评分评价描述:29 . 1、有abc三个口袋,a袋中有1粒糖,b袋中有2粒糖,c袋中有3粒糖2、小红与小明两人轮流在任意一袋中取糖出来。每次可以在任意一袋中,取任意颗(比方,3、到最后,谁最后一次取,并将所有糖都取完了,谁就获胜,获胜者将
9、得到所有的糖。小明让小红先取,自己后取。小红说:不!先取的人肯定会输!请判断,小红所说,是正确还是错误?()正确 错误试题编号:20200319-LL-032试题类型:判断题标准答案:正确试题难度:困难试题解析:从最简单的开始:1、如果总共只有1粒糖,那么谁先谁胜;2、如果有两袋,每袋中有1颗,显然谁先谁输:3、如果有两袋,1袋中1颗,另一袋中有2颗,显然谁先谁胜(只需拿掉2颗中的一颗,剩. 4、如果有两袋,每袋都是2颗,显然谁先谁输(如果一次拿掉2颗,那么对方拿剩下的2颗,: 面3,对方先,也是对方胜)5、如果有三袋,每袋1颗,那么显然谁先谁胜6、如果有三袋,其中两袋有1颗,一袋2颗,显然谁
10、先谁胜,只需将2颗的拿掉,剩下两个 7、如果有三袋,其中两袋有2颗,一袋1颗,显然谁先谁胜(只需拿掉1颗的,剩下就变成 8、如果三袋,分别有1、2、3颗,谁先谁输:如果从3中拿1颗,就变成了上面7,对方先: 也是对方胜,如果将3拿完,就变成上述3,也是对方胜。所以,整个游戏,谁先谁输。此题,是将复杂问题简化,然后逐步增加难度,直到解决整个问题,是典型的分治算法的思杰考生答案:错误考生得分:0是否评分:已评分评价描述:30 .小明听说,使用pygame模块可以编写很多有趣的小游戏,于是他想在自己的电脑上安装这今 他使用了如下命令进行安装,请问,他下面这条命令正确吗?pip install -i
11、pygame正确 错误试题编号:20200319-LL-038试题类型:判断题标准答案:正确试题难度:一般试题解析:这是使用pip命令安装外部模块的基本命令。此题中用法正确。使用了选项-i , python仓库中进行安装的。考生答案:正确考生得分:2是否评分:已评分评价描述:31 .匿名函数L(xl, yl, x2, y2)的返回值是(xl-x2)*2 + (yy2)*2的计算结果。L = lambda xl, yl, x2, y2: (xx2)*2 + (yl-y2)*2正确 错误试题编号:20200320-wc-010试题类型:判断题标准答案:正确试题难度:较难试题解析:匿名函数的返回值是
12、其函数体中的表达式的值考生答案:正确考生得分:2是否评分:已评分评价描述:32 . primenumber (number)函数是判断一个数是否是素数的函数,将函数的循环条件“for i in r range (2, number/2)能够降低 primenumber (number)函数的B寸间复杂度。def primenumber(number):if number 2:print (number, 不是素数! ) else:for i in range(2, number): if number % i = 0:print (number, 不是素数! ) breakelse:print
13、 (number, 是素数! )正确 错误试题编号:20200330-wc-035试题类型:判断题标准答案:错误试题难度:困难试题解析:判断number是否是素数时,如果在:lnumber72范围内存在一个数能够将numbe number=aXb,当 anumber/2 时,bnunibei72,当 bnumber/2 时,a maxfs: elif f maxfs: maxfs = f elif f minfx: minfx = f yxf = sum(fs)-maxfs-minfx avgfs = int (yxf / n * 100 +0.5) / 100 return avgfsfs
14、= 9. 56, 9. 68, 9. 78, 9. 67, 9. 81, 9. 21, 9. 75 defen = getScore (fs) print (defen)试题难度:一般试题解析: 评分标准: len(fs) - 2或等效答案;(3分)maxfs = f;(3 分)int (yxf / n * 100 +0. 5) / 100 或等效答案;(4 分)getScore (fs) o(2 分)展示地址:点击浏览 考生答案:(此题已作答) 考生得分:5 是否评分:已评分 评价描述:37.素数是只能被1和本身整除的正整数,编写自定义函数,实现判断正整数是否为素数。完善无 判断正整数n是否
15、为素数,假设是返回True;否那么返回False 函数名 def prime (n) 参数 n:表示正整数返回值:n是素数,返回True;否那么返回Falsedef prime(n):if n 2:return Falseelse:for i in range (n):if :return False returnn = 7if :print ( 是素数.format (n)else:print (-不是素数.format (n)试题编号:20200330-fcl-007试题类型:编程题标准答案:参考程序:def prime(n):if n 0: return sprint (su (100)
16、A. n=n-ls=s+nB. n=n+ls=s+nC. s=s+nn=n-lD. s=s+nn=n+1试题编号:20220213-ssn-015试题类型:单项选择题标准答案:C试题难度:一般试题解析:考生答案:C考生得分:2是否评分:已评分评价描述:18 .以下关于递归的描述不正确的选项是?()A. 递归函数一定包含条件控制语句B. 递归函数一定包含调用自身的语句C. 在调用自身函数时需要明确的边界终止条件D. 递归算法一般代码简洁,执行效率高,空间复杂度低试题编号:20220213-ssn-016试题类型:单项选择题标准答案:D试题难度:一般试题解析:考生答案:A考生得分:0是否评分:已评
17、分评价描述:19 .以下关于递归与递推方法的比拟,正确的观点是?()A. 递推是将复杂问题分解成假设干个子问题,依次降解,求出低阶规模的解,代入高阶问:B. 递归是构造低阶规模的问题,并求出解,依次推导出高阶的问题以及解,直至求出问)C. 数学上的递推关系可以通过递归的方法来实现D. 递归算法代码简洁,运行速度比递推快,因此应该尽量采用递归的方法试题编号:20220213-ssn-017试题类型:单项选择题标准答案:C试题难度:一般试题解析:考生答案:C考生得分:2是否评分:已评分评价描述:20 .以下程序段的运行结果为?()def fun(a):if a=l:return 1else:return fun(a-1)*2pri nt (fun (5)A. 4B. 8C. 16D. 25