python软件编程等级考试一级编程实操题01图文.docx
- 文档编号:11141992
- 上传时间:2023-02-25
- 格式:DOCX
- 页数:17
- 大小:63.93KB
python软件编程等级考试一级编程实操题01图文.docx
《python软件编程等级考试一级编程实操题01图文.docx》由会员分享,可在线阅读,更多相关《python软件编程等级考试一级编程实操题01图文.docx(17页珍藏版)》请在冰豆网上搜索。
python软件编程等级考试一级编程实操题01图文
python软件编程等级考试(一级)编程实操题01图文
一、选择题
1.以下对Python程序缩进格式描述错误的选项是()
A.不需要缩进的代码顶行写,前面不能留空白
B.缩进可以用tab键实现,也可以用多个空格实现
C.严格的缩进可以约束程序结构,可以多层缩进
D.缩进是用来格式美化Python程序的
2.下列Python程序段的运行结果是()
i=0
sum=0
whilei<10:
ifi%2==0:
sum+=i
i+=1
print(‘sum=’,sum)
A.sum=18B.sum=20C.sum=22D.sum=30
3.若用整型变量k表示某天是星期几(例如k=1表示该天是星期一、k=2表示该天是星期二……k=7表示该天是星期天),则下列能够正确表示k的下一天是星期几的python表达式为()
A.k+1B.k%7+1C.(k+1)%7D.(k+1)%7-1
4.有如下python程序段
n=int(input("请输入n值:
"))
x=n;y=0
ifx>0:
y=y+1
elifx<0:
y=y-1
print(y)
执行上述语句,下列说法不正确的是()
A.若输入-1,则输出y值为-1B.若输入0,则输出y值为-1
C.若输入1,则输出y值为1D.若输入2,则输出y值为1
5.Python中“ab”+“cd”*2的结果是()。
A.abcd2B.abcdabcdC.abcdcdD.ababcd
6.以下属于计算机高级语言的是()
A.PythonB.自然语言C.汇编语言D.机器语言
7.以下Python程序运行后,变量x和st的值分别是()。
A.801123678B.801“123678”C.801801D.123678“123678”
8.在下面的python程序中,变量b和c的值为()。
A.b为6,c为6B.b为6,c为8C.b为8,c为8D.b为8,c为6
9.利用Python求100以内所有能被3整除的正整数,代码如下:
则下列程序第3行的横线应该填()
A.i=i*3B.i=i%3C.i%3==0D.i/3==1
10.在Python中,若x=10,y=20,下面程序段执行后,变量x、y的值分别是()
x=y
y=x
A.10、10B.10、20C.20、20D.20、10
11.已知列表list1=[10,66,27,33,23],则python表达式max(list1)的值为()
A.10B.66C.5D.23
12.已知列表list1=[88,22,34,89,67],则python表达式min(list1)的值为()
A.22B.88C.89D.67
13.python语言的特点()。
A.简单B.免费、开源C.可移植性D.以上都是
14.下列不属于高级编程语言的是
A.C语言B.VB语言C.Python语言D.机器语言
15.在python中,以下哪个选项a的数据类型为整型()
A.a=5B.a=input()C.a='5'D.a=5.0
二、程序填空
16.现今信息化时代,信息的传输十分迅速,足不出户便知天下事。
许多社交平台都有设置本平台的热点排行榜,方便用户了解正在发生的热门事件。
但社交平台数量众多,平台用户种类和数量也大不相同,导致不同平台热点的实际热度大小也不同。
小钟为了确保自己知道的热点是真正的热点,于是打算用功能强大的python把各个平台的热点排行榜进行合并,形成自己的热点排行榜。
为了热点之间比较方便,小钟设置了一个热度值来衡量一个热点的热度大小,热度值越大说明这个热点的热度越高。
现在小钟已经获得了如下两个平台的热度值从小到大的排行榜,正当他打算将之合并为一个从小到大的排行榜时,却被老师叫走了。
于是他决定把这个小功能交给他的好朋友——你来实现,你想到2种算法,请把下列程序填写完整。
A
P10
P9
P8
P7
P6
P5
P4
P3
P2
P1
11
66
116
329
438
582
652
714
756
925
B
E10
E9
E8
E7
E6
E5
E4
E3
E2
E1
35
116
215
271
309
428
576
772
806
950
Python程序如下:
A=[11,66,116,329,438,582,652,714,756,925]
B=[35,116,215,271,(5)__,428,576,772,806,950]
算法一:
myRank=
i=0
j=0
while(i if(A[i] (6)______ i+=1 else: myRank.append(B[j]) j+=1 while(i myRank.append(A[i]) i+=1 else: while((7)______): myRank.append(B[j]) j+=1 print(myRank) 算法二: myRank=[0]*(len(A)+len(B)) i=0 j=0 k=0 while((8)_____): k=i+j if(i>=len(A)): myRank[k]=B[j] j+=1 elif(j>=len(B)): myRank[k]=A[i] i+=1 elif((9)_____): myRank[k]=A[i] i+=1 else: myRank[k]=B[j] j+=1 print(myRank) 17.(项目情境)递归就是自己调用自己,它是设计和描述算法的一种有力工具,常常用来解决比较复杂的问题。 为求解规模为N的问题,设法将它分解成规模较小的问题,从小问题的解容易构造出大问题的解,并且这些规模问题较小的问题也能采用同样的分解方法,分解成规模更小的问题,并能从这些更小问题的解构造出规模较大问题的解。 一般情况下,规模N=1时,问题的解是已知的。 已知: 从1到n的连续自然数相乘的积、叫做阶乘、用符号n! 表示。 如5! =1×2×3×4×5,规定0! =1。 我们用递归算法可以较容易求n的阶乘。 求n的阶乘算法可以描述如下: n! =n*(n-1)! (n-1)! =(n-1)*(n-2)! (n-2)! =(n-2)*(n-3)! 2! =2*1! 1! =0! 0! =1 如果把n! 写成函数形式,即f(n),f(n)=n*f(n-1)。 如f(5)就是表示5! ,求5! 的过程可以写成如下形式: f(5)=5*f(4)f(4)=4*f(3)f(3)=3*f (2)f (2)=2*f (1)f (1)=1 (问题求解)在python中用递归算法求1! +2! +……+n! (n的值为整数,从键盘输入)。 请阅读如下程序,在空白处填写适当的表达式或语句,使程序完整。 deff(n): ifn==0: return1 else: return_________ s=0 n=int(input("请输入n: ")) foriin_______: s=________ print(s) 18.现有字典如下,根据题目要求,写出相关的表达式: xingzuo={‘小明’: ‘巨蟹座’,‘小红’: ‘处女座’,‘小兰’: ‘金牛座’} (1)现要取出小红所对应的星座,写出相关表达式: ___________________________________________________________ (2)现发现,“小兰”同学的星座应该是“水瓶座”,请帮忙修改。 __________________________________________________________ (3)现发现,在字典中漏写了关于“小贝”的信息,现已知“小贝”为“双子座”,请帮忙添加。 _________________________________________________________ (4)写出删除该字典的表达式: ___________________________________________________________ 19.程序设计: 唐三藏又被妖怪抓走了,这次孙悟空还是没打得过妖怪,于是来求观音菩萨。 观音菩萨告诉孙悟空,在天庭里身高正好为1000米的那位神仙可以降伏此妖。 于是悟空立刻来到天上,在玉皇大帝的神仙册上看到了按身高从矮到高排列有10000个神仙。 由于时间紧迫,悟空想用最短的时间找到这位神仙,这样才可以尽快解救唐僧。 代码如下: List=list(map(int,input(“请按身高递增顺序依次输入10000个神仙的身高”).split())) left=1 right=10000 while① mid=② ifList[mid]==1000: ③ elifList[mid]<1000: ④ else: ⑤ print(“能帮孙悟空的神仙在第{0}位上”.format(mid+l)) (1)程序代码中①处正确的代码是(_______)。 A.left<rightB.left<=rightC.left! =rightD.left>right (2)程序代码中②处正确的代码是(_______)。 A.(left+right)/2B.(left+right)\2 C.(left+right)//2D.(left+right)\\2 (3)程序代码中③处正确的代码是(_______)。 A.passB.print(mid)zC.breakD.continue (4)程序代码中④处正确的代码是(_______)。 - A.left=midB.right=midC.left=mid+1D.right=mid-1 (5)程序代码中⑤处正确的代码是(_______)。 A.left=midB.right=midC.left=mid+1D.right=mid-1 20.哥德巴赫在1742年提出了以下猜想: 任何一个大于2的偶数都可以写成两个质数之和,请完善代码帮助哥德巴赫验证他的猜想。 importmath defss(n): Flag=True i=2 whilei<=int(math.sqrt(n))andFlag: if_____________ Flag=False _____________ returnFlag n=int(input(“输入一个大于2的偶数”)) foriinrang(2,n//2+1): if____________ print(str(n)+"="+str(i)+"+"+str(n-i)) 如果输入“8”则结果显示_____ 21.分析完善程序 已知包含25项的数列: 1,2/3,3/5,....,24/47,25/49。 问题1: 写出该数列的通项公式f(n)=_① 问题2: 以下是计算S=1+2/3+3/5+...+24/47+25/49的程序,请补全代码: s=0 foriinrange(1,26): s=s+② print(“s=”,s) 补充完成上述通项公式和程序: ①f(n)=_________ ②___________ 【参考答案】***试卷处理标记,请不要删除 一、选择题 1.D 【详解】 本题主要考查Python语法格式。 不需要缩进的代码顶行写,前面不能留空白;缩进可以用tab键实现,也可以用多个空格实现;严格的缩进可以约束程序结构,可以多层缩进;缩进是代码书写规则 解析: D 【详解】 本题主要考查Python语法格式。 不需要缩进的代码顶行写,前面不能留空白;缩进可以用tab键实现,也可以用多个空格实现;严格的缩进可以约束程序结构,可以多层缩进;缩进是代码书写规则要求,故本题选D选项。 2.B 【详解】 本题考查Python语句。 根据while可知,当ifi%2==0成立时,sum+=i,i=2,4,6,8时,If条件成立,故sum=2+4+6+8=20,又根据print(‘sum 解析: B 【详解】 本题考查Python语句。 根据while可知,当ifi%2==0成立时,sum+=i,i=2,4,6,8时,If条件成立,故sum=2+4+6+8=20,又根据print(‘sum=’,sum),则最后运行结果是sum=20,故本题选B。 3.B 【详解】 本题主要考查Python表达式的运算。 一周7天,周期为7,故表示k的下一天是星期几的python表达式为k%7+1,故本题选B选项。 解析: B 【详解】 本题主要考查Python表达式的运算。 一周7天,周期为7,故表示k的下一天是星期几的python表达式为k%7+1,故本题选B选项。 4.B 【详解】 本题主要考查Python程序执行。 分析程序可知,当x>0,执行y=y+1;当x<0,执行y=y-1;若输入0,则不满足if条件结构跳过,输出y值为0,故本题选B选项。 解析: B 【详解】 本题主要考查Python程序执行。 分析程序可知,当x>0,执行y=y+1;当x<0,执行y=y-1;若输入0,则不满足if条件结构跳过,输出y值为0,故本题选B选项。 5.C 【详解】 本题主要考查Python表达式的运算。 字符串乘上整数n,将返回由n个此字符串拼接起来的新字符串,故该表达式的运算结果是abcdcd,故本题选C选项。 解析: C 【详解】 本题主要考查Python表达式的运算。 字符串乘上整数n,将返回由n个此字符串拼接起来的新字符串,故该表达式的运算结果是abcdcd,故本题选C选项。 6.A 【详解】 本题考查计算机语言的相关知识点 计算机高级语言有Python、Java等 计算机低级语言有汇编语言 机器语言是计算机直接识别并执行的语言。 故本题选A选项 解析: A 【详解】 本题考查计算机语言的相关知识点 计算机高级语言有Python、Java等 计算机低级语言有汇编语言 机器语言是计算机直接识别并执行的语言。 故本题选A选项 7.B 【详解】 本题主要考查Python语句执行。 语句X=123+678是整型类型运算,值为801;语句St="123"+"678"是字符串运算,直接拼接,值为"123678",故本题选B选项。 解析: B 【详解】 本题主要考查Python语句执行。 语句X=123+678是整型类型运算,值为801;语句St="123"+"678"是字符串运算,直接拼接,值为"123678",故本题选B选项。 8.C 【详解】 本题考察赋值语句。 将6赋值给a,此时a为6; 将8赋值给c,此时c为8; 将c复制给b,此时b的值即为c的值,b为8; 将b赋值给a,此时a即为b的值,a为8。 故a为8,b为8,c 解析: C 【详解】 本题考察赋值语句。 将6赋值给a,此时a为6; 将8赋值给c,此时c为8; 将c复制给b,此时b的值即为c的值,b为8; 将b赋值给a,此时a即为b的值,a为8。 故a为8,b为8,c为8,故C选项正确。 9.C 【详解】 本题主要考查Python程序的执行。 该程序实现求100以内所有能被3整除的正整数,故第3行的横线应该填i%3==0,故本题选C选项。 解析: C 【详解】 本题主要考查Python程序的执行。 该程序实现求100以内所有能被3整除的正整数,故第3行的横线应该填i%3==0,故本题选C选项。 10.C 【详解】 本题主要考查Python程序的执行。 x=10,y=20,x=y=20,y=x=20,故程序段执行后,变量x、y的值分别是20、20,故本题选C选项。 解析: C 【详解】 本题主要考查Python程序的执行。 x=10,y=20,x=y=20,y=x=20,故程序段执行后,变量x、y的值分别是20、20,故本题选C选项。 11.B 【详解】 本题主要考查Python表达式的运算。 max返回序列最大值,列表list1=[10,66,27,33,23],则python表达式max(list1)的值为66,故本题选B选项。 解析: B 【详解】 本题主要考查Python表达式的运算。 max返回序列最大值,列表list1=[10,66,27,33,23],则python表达式max(list1)的值为66,故本题选B选项。 12.A 【详解】 本题主要考查Python列表。 min是返回列表中的最小值,列表list1=[88,22,34,89,67],则python表达式min(list1)的值为22,故本题选A选项。 解析: A 【详解】 本题主要考查Python列表。 min是返回列表中的最小值,列表list1=[88,22,34,89,67],则python表达式min(list1)的值为22,故本题选A选项。 13.D 【详解】 本题考查的是python语言的特点。 Python语言的三个特点是语法简单(函数式语言与面向对象语言的结合)、使用直接(大量丰富的库)、开发周期短(代码量小)。 故选项D正确。 解析: D 【详解】 本题考查的是python语言的特点。 Python语言的三个特点是语法简单(函数式语言与面向对象语言的结合)、使用直接(大量丰富的库)、开发周期短(代码量小)。 故选项D正确。 14.D 【详解】 本题考查的是程序语言。 常见的高级编程语言有: C、VB、Python等。 机器语言是计算机语言的一种不属于高级语言。 故应选D。 【点睛】 解析: D 【详解】 本题考查的是程序语言。 常见的高级编程语言有: C、VB、Python等。 机器语言是计算机语言的一种不属于高级语言。 故应选D。 【点睛】 15.A 【详解】 本题考查Python数据类型。 Python数据类型有字符串,布尔类型,整数,浮点数等。 a=5,a为整数型;a=‘5’,则a为字符串;a=5.0,则a为浮点数。 故本题选A。 解析: A 【详解】 本题考查Python数据类型。 Python数据类型有字符串,布尔类型,整数,浮点数等。 a=5,a为整数型;a=‘5’,则a为字符串;a=5.0,则a为浮点数。 故本题选A。 二、程序填空 16.myRank.append(A[i])j 【详解】 本题主要考查python编程。 根据表格所示,列表B中第5个元素为309,因此①处为309;A[i] 【点睛】 17.n*f(n-1)range(1,n+1)s+f(i) 【详解】 本题主要考查Python程序的执行与调试。 ①此处是定义递归函数f(n),由题干,当n=0时,返回1,否则返回n*f(n-1),故此处填n*f(n-1)。 ②用递归算法求1! +2! +……+n! ,故变量i的范围应是1—n,foriinrange(1,n+1)表示i的范围是[1,n],故此处填range(1,n+1)。 ③循环体实现累加,将每一项阶乘f(i)加到s中,故此处填s+f(i)。 18.xingzuo[“小红”]xingzuo[“小兰”]=“水瓶座”xingzuo[“小贝”]=“双子座”delxingzuo 【详解】 本题主要考查字典数据类型。 ①字典数据类型,可以通过检索字典的键值得到对应的值,即xingzuo[“小红”]=‘处女座’,故第一空填xingzuo[“小红”]。 ②将“小兰”同学的星座修改为“水瓶座”,可以通过语句xingzuo[“小兰”]=“水瓶座”。 ③同理添加小贝的信息为,xingzuo[“小贝”]=“双子座”。 ④删除该字典的表达式是delxingzuo。 19.BCCCD 【详解】 本题主要考查二分查找算法及Python程序实现。 ①二分查找的循环条件是left<=right,故选B选项。 ②此处是取中间值,需要整除2,故填(left+right)//2 ,故选C选项。 ③如果mid对应的列表值是1000,表示已找到,则用break跳出循环,选C选项。 ④如果mid对应的列表值小于1000,则需要更新left的值为mid+1继续循环,选C选项。 ⑤否则更新right的值为mid-1,选D选项。 20.n%i==0: i+=1ss(i)andss(n-i): 8=3+5 【详解】 本题主要考查Python程序的执行与调试。 ①函数ss(n)用来判断n是否为质数,若是则返回True,否则返回False,此处是通过while循环逐个判断n是不是能整除i,故填n%i==0: 。 ②若不满足if条件,则i递增,继续循环判断,故填i+=1。 ③此处判断i与n-i是否都是质数,若是,则表明该偶数可以写成两个质数之和,并输出,故填ss(i)andss(n-i): 。 ④如果输入“8”则结果显示8=3+5。 21.n/(2*n-1)或n/(n*2-1)i/(2*i-1)或i/(i*2-1) 【详解】 本题主要考查Python程序的执行与调试。 ①分析数列可知,分子第n项是n,分母第n项是2*n-1,故该数列的通项公式f(n)=n/(2*n-1)或n/(n*2-1)。 ②此处是对前n项进行求和,变量是i,使用语句s=s+i/(2*i-1)或s=s+i/(i*2-1),故此处填i/(2*i-1)或i/(i*2-1)。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- python 软件 编程 等级 考试 一级 实操题 01 图文
![提示](https://static.bdocx.com/images/bang_tan.gif)