教科版(2019)必修一2.3周而复始的循环同步训练

2024-05-31
| 9页
| 39人阅读
| 0人下载

内容正文:

教科版(2019)必修一2.3周而复始的循环同步训练 一、选择题 1.现有近似求ex的公式如下: 实现上述功能的Python程序段如下: x=int(input("请输入x=")) n=int(input("请输入n=")) e=1;p=1;i=0 while i<n:    print(e) 方框处的代码由以下三部分组成: ①i=i+1  ②p=p*i  ③e+=x**i/p 下列选项中,代码顺序正确的是(   ) A.①③② B.①②③ C.③①② D.③②① 2.有如下Python程序段: import random a=[0,0,0,0,0,0] for i in range(6): x = random.randint(1, 10) if i % 2 == 0: a[i] = 2 * x + 1 elif x % 2 == 0: a[i] = x // 2 else: a[i] = x - 1 执行该程序段后,a[0]~a[5]各元素可能的值是(   ) A.3,3,9,0,19,8 B.5,0,9,4,13,10 C.9,3,11,5,17,7 D.3,2,7,4,22,6 3.计算两数的最小公倍数算法如下: a = int(input("请输入第一个数:")) b = int(input("请输入第二个数:")) k = 2 Lcd = 1 while a != 1 or b != 1:     if a % k == 0 or b % k == 0:         if :             a = a // k         if :            b = b // k           else:          print("最小公倍数为:", Lcd) 方框中的代码由以下四部分组成: ①Lcd = Lcd * k    ②k = k + 1    ③b % k == 0    ④a % k == 0 则(1)(2)(3)(4)处代码顺序依次为(   ) A.③④②① B.③④①② C.④③②① D.④③①② 4.有如下Python程序段: import random s1="PROGRESS";s2="" f=[False]*8 for i in range(1,5): t=random.randint(0,3)*2+1 while f[t]: t=random.randint(0,3)*2+1 f[t]=True s2=s2+s1[t] print(s2) 执行该程序段后,显示的值不可能是( ) A.EGRS B.GERS C.SEOR D.RESG 5.现有鸡兔同笼,上有11头,下有28脚。试计算笼中鸡、兔各有多少只(设鸡有a只,兔有b只)。下列代码中不能正确计算鸡、兔数量的是(    ) A. B. C. D. 6.列表 a 为某学生一天主要运动消耗热量的情况,列表 b 为各项运动,为了求出这六项运动一共消耗多少热量,空白处代码正确的是(    ) a={'慢走':95,'自行车':100,'羽毛球':122,'爬楼梯':180,'跳绳':245,'慢跑':221} b=['慢走','自行车','羽毛球','爬楼梯','跳绳','慢跑'] s=0 for i in ① : ② print('总消耗量为:'+ ③ ) A.①b    ②s=a[i]+s    ③ s B.①b    ②s+=a[i]    ③ str(s) C.①a    ②s=a[i]+s    ③ s D.①a    ②s+=a[i]    ③ str(s) 7.有如下Python程序: import random a=[0,0,0,0,0,0] for i in range(6):   a[i]=random.randint(1,10) for i in range(0,6):   if i%2==0 and a[i]%2==0:     a[i]//=2   else:       a[i]+=1 print(a) 执行程序后,列表a各元素可能是(   ) A.1,5,1,11,2,11 B.7,2,8,10,5,9 C.6,9,3,7,8,12 D.3,9,0,8,2,7 8.有如下Python程序段: dic={1:"2023",2:["杭州亚运会"],3:"心心相融@未来",4:["Heart to Heart","@Future"]} cnt=0 for i in range(3):   cnt+=len(dic[i+1]) print(cnt) 该程序段运行后,输出的结果是(   ) A.16 B.12 C.10 D.3 9.有如下Python程序段: s="PYTHON" ch="" i=0 while i<len(s):   n=int(input("请输入数字:"))   t=(n+1)%6   ch=ch+s[t]   i=i+1 print(ch) 运行程序后,依次输入3、1、4、5、2、6,输出ch的值是(   ) A.THONPY B.OTNPHY C.YPNOHT D.TOPHNY 10.在Python语言 中,下面程序的屏幕输出结果是(   ) s=1 for i in range(1, 9,2): s=s*2 print (s) A.2 B.8 C.16 D.32 11.某Python程序如下: list1=[3,4,8,6,9] c=0 i=0 while i<len(list1) :     if list1[i]%3==0:         c+=list1[i]     else:         c-=list1[i]     i+=1 print(c) 程序运行后,输出的结果是(   ) A.5 B.6 C.7 D.9 12.阅读下列Python程序块,运行结果为(   ) s=0 while s<=20:     print(s)     s=s+7 A. B. C. D. 13.下列程序运行后结果是(   ) sum=0 for i in range(1,7,2):     sum = sum+i print(sum) A.4 B.7 C.9 D.16 14.有如下Python程序段: s="VictoryOnTheWay"#'A'的ASCII值为65,"a"的ASCII码值为97 mx="" pre=0 for i in range(1,len(s)):     if ord(s[i]) < 97:         if mx<s[pre:i]:             mx=s[pre:i]         pre=i print(mx) A.Victory B.On C.The D.Way 15.有如下Python程序段: import random s="12345678" g="" for i in range(3):     n=len(s)     pos=random. randint(1,n-1)     g+=s[pos]     s=s[0:pos]+s[pos+1:n] print(g) 在该程序段执行时,变量g的值可能为(   ) A."542" B."138" C."336" D."15" 试卷第1页,共3页 试卷第1页,共3页 学科网(北京)股份有限公司 参考答案: 1.B 【详解】本题考查Python程序执行与调试。根据while循环语句的结构,由于变量i的的初始值为0,所以在循环内需要先执行i=i+1,然后求表达式中的分母,p=p*i,最后执行累加表达式e+=x**i/p,所以选项B符合题意。故选B。 2.A 【详解】本题考查的是Python循环及选择语句。x = random.randint(1, 10)生成1~10的随机整数,阅读程序可知列表a中索引为0、2、4为奇数且值在3~21,故选项D不可能(a[4]=22>21);列表a中索引为1、3、5的值在0~9,故选项B不可能(a[5]=10>9);选项C中a[5]=7,倒推x的值可能是8(执行 a[i] = x - 1后得到7),8是偶数不是奇数不可能执行 a[i] = x - 1,那么x的值可能是14(执行 a[i] = x // 2后得到7),这与x的取值范围1~10相矛盾,故也不能执行 a[i] = x // 2,既a[5]不可能是7,选项C不可能,排除BCD,本题应选A。 3.D 【详解】本题考查的是Python循环语句。分析程序可知,采用的是分解质因数法来求最小公倍数。如果k是a的质因数,求下一个质因数前,则要将执行a // k;如果k是b的质因数,求下一个质因数前,则要将执行b // k;相同的质因数只取1个,各自独有的质因数全部乘上,得出的值就是最小公倍数,故(1)(2)(3)依次为④a % k == 0③b % k == 0①Lcd = Lcd * k,逐个验证是否为a、b质因数,故(4)处代码为 ②k = k + 1。选项D正确。 4.C 【详解】本题考查Python程序设计相关内容。由 t=random.randint(0,3)*2+1可知t可能是1,3,5,7,故s2中的字符可能是“RGES”,由while循环可知,字符不能重复。选项C字符中含有O不可能,故本题应选C。 5.C 【详解】本题考查枚举算法及Python程序实现。选项C中,//是整除运算符,因此当运算出现小数时会取整,因此可能会出现错误结果,如a=9时,28-2*9=10,b=(28-2*9)//4=2,验证脚:9*2+2*4=26,显然错误,正确结果是:鸡有8只,兔有3只。其余选项均可以,故选C。 6.B 【详解】本题考查Python循环结构的应用。a是字典数据类型,即各项运动对应的消耗热量,循环依次从b中取出各项运动,即①填b。循环体使用变量s统计消耗的热量,即②处填s+=a[i]。最后将s转换为字符型输出,故③处填str(s)。故选B。 7.A 【详解】本题考查的是Python循环语句。random.randint(1,10)生成1~10的随机整数。经 a[i]//=2或 a[i]+=1不可能为0、12,故选项C、D不可能;选项A中,a[0]=7,只能由a[i]+=1得到结果(如果由a[i]//=2得到,则初始a[0]=14,超出1~10),故初始a[0]=6,初始a[0]=6满足if条件,应执行a[i]//=2,与执行a[i]+=1矛盾了,故选项B不可能。本题应选A。 8.B 【详解】本题考查Python程序执行。分析程序,i依次取0、1、2,i+1依次对应1、2、3。for循环实现统计字典dic中键1、2、3对应键值长度之和,dic={1:"2023",2:["杭州亚运会"],3:"心心相融@未来",4:["Heart to Heart","@Future"]},则cnt=0+4+1+7=12。故选B。 9.B 【详解】本题考查Python程序的执行。依次输入3、1、4、5、2、6,执行t=(n+1)%6后对应t的值依次是4、2、5、0、3、1,将索引为t的元素s[t]依次拼接到变量ch中,得到ch的值是OTNPHY。故选B。 10.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)。range(1, 9,2)生成的序列数是:1,3,5,7,故s=1*2*2*2*2=16,选项C正确。 11.B 【详解】本题考查的是Python循环与选择语句。阅读程序,可知程序功能是对列表list1中判断,如果能被3整除,则求和,否则减去该值。list1=[3,4,8,6,9],故c=3-4-8+6+9=6。故本题应选B。 12.A 【详解】本题考查Python循环结构的应用。s初值为0,循环条件是s<=20,先输出s的值再将s递增7,因此输出s的值依次是0、7、14。故选A。 13.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依次取1、3、5,因此sum=sum+i=0+1+3+5=9。故选C。 14.A 【详解】本题考查的是Python应用。阅读程序可知,从字符串s的i字母开始,如果是大写字母,并且mx<s[pre:i],则mx=s[pre:i],直到字符串s结束。s="VictoryOnTheWay",第一次碰到大写字母O,mx<s[pre:i]成立,mx=s[pre:i]="Victory";第二次大写字母W,"W">"Victory",不执行mx=s[pre:i],故最后输出:Victory。选项A正确。 15.A 【详解】本题考查Python程序执行与调试。s="12345678", n=len(s)=8, pos=random. randint(1,n-1)=random. randint(1,7),即pos是随机生成1~7之间的整数。然后执行g+=s[pos],再执行 s=s[0:pos]+s[pos+1:n],即s中去掉下标为pos的元素,一共循环3次,因此g中元素有3个,且没有重复,排除C、D选项。字符串索引从0开始,根据pos值可知取不到第一个元素"1",排除B选项,因此变量g的值可能为"542"。故选A。 答案第1页,共2页 答案第1页,共2页 学科网(北京)股份有限公司 $$

资源预览图

教科版(2019)必修一2.3周而复始的循环同步训练
1
教科版(2019)必修一2.3周而复始的循环同步训练
2
教科版(2019)必修一2.3周而复始的循环同步训练
3
相关资源
示范课
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。