资源简介 2.3 周而复始的循环(同步练习)-高中信息技术教科版(2019)必修1一、选择题1.有如下Python程序段,运行该程序,输出的结果可能是( )import randomn=random. randint (50,101)a=[ ]for i in range(2,n): while n%i ==0: a+=[i] n//=iprint(a)A.[3,3,3,3] B.[2,2,9] C.[55] D.[5,15]2.设有以下程序段,循环将执行( )i=10while i < 10 : i-= 1A.10次 B.0次 C.无限次 D.1次3.用流程图表示的基本控制结构如图所示,表示循环结构的是( )A.②③ B.③ C.① D.②4.阅读下列Python程序块,运行结果为( )s=0while s<=20: print(s) s=s+7A. B. C. D.5.下列描述,正确的是( )A.range(10),包含10个元素 B.range(1,10),包含10个元素C.range(0,10,2),包含10个元素 D.range(0,10,5),包含5个元素6.以下程序共执行了( )次循环。for i in range(2,10,2): print(i)A.5 B.10 C.4 D.07.在Python语言中,下列程序代码运行后a的值是( ) a=3 for i in range(1,6): a=a+iA.3 B.4 C.9 D.188.已知斐波那契数列前7项值为 1,1,2,3,5,8,13…,计算该数列第n项的Python程序如下:a=b=1n=int(input(“请输入项数:”))for i in range(n-2):print("第n项为:",b)加框处可选的语句有:①a=b-a ②b=a ③b=a+b ④a=b下列选择的语句正确的是( )A.③① B.②④ C.④② D.①③9.有如下Python程序段:a=[]h=-1for i in range(4):t=int(input())a.append([t,h]) #为列表a添加一个新元素h+=1while a[h][1]!=-1:print(a[h][0],end=″→″)h=a[h][1]执行该程序段,依次输入1、2、3、4之后,输出的是( )A.″1→2→3→4→″ B.″1→2→3→″ C.″4→3→2→1→″ D.″4→3→2→″10.有如下Python程序段:from random import randints=″Infomation″for i in range(2):k=randint(0,2)*2+1 #randint(0,2)随机产生[0,2]之间的整数s=s[:k]+s[k+1:]执行该程序段后,变量s的值不可能是( )A.″Iomation″ B.″Inmation″ C.″Infation″ D.″Ifoation″二、填空题11.调试程序。请阅读以下程序并写出运行结果。#ex16.pyi=0sum=0while i<10:if i%3==0:sum+=iprint(i)i=i+1print('sum',sum)_________12.完善程序。求出100以内满足afor a in range(1,101)for b in range ___ :for c in range(1,101):if____:print(a," ",b,"",c)13.有如下程序段:s=0for i in range(1,11,2):s=s+iprint(s)该程序段运行后,s的值为________。三、操作题14.小明想要编写一个“猜骰子点数”的程序,计算机先生成一个[1,6]之间的随机整数,来模拟投掷骰子的过程,然后用户通过键盘输入数字来猜测骰子点数,并借助micro:bit设备中的5*5 LED阵列来显示用户猜测的结果,猜对显示笑脸表情,猜错显示骰子点数数字,如图1所示。为实现上述程序功能,小明进行了以下实践内容。(1)小明用USB连接线连接计算机和micro:bit,并观察计算机的设备管理器,如图2所示。由图可知,此时该micro:bit连接的计算机端口是_______。(2)小明在BXY中编写的代码如下,烧录后通过串口进行调试。请在程序段划线处填入合适的代码。from microbit import *import randomwhile True:display.clear() #清除LED阵列的显示内容 num=str( ①_______) uart.anyuart.any(): uart.readalluart.readalluart.readall(),'UTF-8') if incoming==num: display.showImage.HAPPYImage.HAPPY) sleep(1000) else: ②_______ sleep(1000)参考答案1.答案:A解析:本题主要考查Python程序的执行与调试。解题思路程序可知,n是随机生成50~101之间的整数,该程序实现输出n的所有质因数,当n=81时,输出的结果是[3,3,3,3]。其余选项中9、55、15都可以进行因式分解,因此不可能,故本题选A选项。2.答案:B解析:本题主要考查Python循环结构。i=10,不满足while循环条件,因此循环将执行0次,故本题选B选项。3.答案:B解析:本题考查流程图。①表示顺序结构;②表示分支结构;③表示循环结构。故答案为B选项。4.答案:A解析:本题考查Python循环结构的应用。s初值为0,循环条件是s<=20,先输出s的值再将s递增7,因此输出s的值依次是0、7、14。故选A。5.答案:A解析:本题考查的是range函数。格式:range(start, stop[, step])。start::计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0,5);stop:计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0,1,2,3,4]没有5;step:步长,默认为1。例如:range(0, 5) 等价于 range(0,5,1)。故本题应选A。6.答案:C解析:本题主要考查Python循环结构。range(start, stop, [step]),start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5;step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)。i依次取2、4、6、8,因此一共执行4次循环,故本题选C选项。7.答案:D解析:本题主要考查Python程序的执行。i依次取1、2、3、4、5,因此a=3+1+2+3+4+5=18,故本题选D选项。8.答案:A解析:本题考查Python程序执行与调试。斐波那契数列从第三项开始后一项是前2项之和,a和b的初值为1,则第三项更新为b=a+b=2,第二项更新为a=b-a=1,其他依此类推,从而求出第n项为b。故选A。9.答案:D解析:本题主要考查Python程序的执行。第一个for循环执行完,a=[[1,-1],[2,0],[3,1],[4,2]],第二个while循环从后往前依次输出,因为a[0,1]=-1,所以1不会输出,输出结果是″4→3→2→″,故本题选D选项。10.答案:B解析:本题主要考查Python程序的执行。randint(0,2)随机产生[0,2]之间的整数,k=randint(0,2)*2+1,k随机生成1、3、5,当k=1、3、5时,第一遍循环执行s=s[:k]+s[k+1:]后s分别是'Iformation'、'Infrmation'、'Inforation';第二遍循环执行s=s[:k]+s[k+1:]后s有9种可能性分别是'Iormation'、'Ifomation'、'Iformtion'、'Ifrmation'、'Infmation'、'Infrmtion'、'Iforation'、'Infration'、'Infortion',因此变量s的值不可能是″Inmation″,故本题选B选项。11.答案:0解析:12.答案:(1,101) a*a==b*b+c*c解析:13.答案:25解析:14.答案:(1)COM4(2)random.randint(1,6);display.show(num)解析:本题考查Python程序。(1)根据题目描述,小明用USB连接线连接计算机和micro:bit,并观察计算机的设备管理器,由图2可知,此时该micro:bit连接的计算机端口是 COM4。故答案为:COM4。(2)程序中通过 random.randint(1,6) 生成一个1到6之间的随机整数,模拟骰子的点数,故答案为:random.randint(1,6)。当串口接收到用户输入的数字后,与生成的随机整数进行比较。如果相等,就显示笑脸;否则,使用 display.show(num) 来显示用户猜测的数字,故答案为:display.show(num)。 展开更多...... 收起↑ 资源预览