2.2 做出判断的分支 2024-2025学年高中信息技术教科版(2019) 必修1

2024-08-10
| 14页
| 143人阅读
| 0人下载

内容正文:

2.2 做出判断的分支 学校:___________姓名:___________班级:___________考号:___________ 一、选择题 1.对于下列Python语句 if b==2:  s=s*2 else:  s=s/2 下列说法正确的是(   ) A.b==2为赋值语句 B.s=s*2和s=s/2均为赋值语句 C.s=s*2和s=s/2均为关系表达式 D.s=s*2为关系表达式,s=s/2为赋值语句 2.现有如下python程序段: for i in range( 6 ):     p.append( int( random() * 10 ) + 1 ) for i in range( 2, 6 ):     if i % 2 == 1 and p[ i ] % 2 == 0:         p[ i ] += p[ i - 1]     elif i % 2 == 0 and p[ i ] % 2 == 1:         p[ i ] -= p[ i - 1] 执行该程序段后,在下列选项中,列表p中的元素值不可能的是() A.1, 2, 3, 4, 7, 2 B.1, 2, 14, -9, -5, 8 C.6, 8, 1, 4, 6, 10 D.6, 4, 14, -7, 3, 8 3.有如下Python程序段(   ) a=[] for i in range(100):     if i%10==0:          a.append(i) 则程序执行后,a[1]和a[-1]的值分别是 A.0和100 B.10和100 C.0和90 D.10和90 4.有如下对分查找程序段    #列表a存放整数升序数据,代码略    key=int(input())    f=[0]*9    i=0    j=8    while i<=j:        m=(i+j)//2        f[m]=1        if a[m]>key:            j=m-1        else:            i=m+1    print(f)    输入待查找数据,执行该程序段后,下列选项中,列表f的值不可能的是(     ) A.[0, 0, 0, 0, 1, 1, 1, 0, 0] B.[1, 1, 0, 0, 1, 0, 0, 0, 0] C.[0, 1, 0, 0, 1, 0, 1, 0, 0] D.[0, 0, 0, 0, 1, 0, 1, 1, 0] 5.有如下Python程序段: 执行该程序段,输入“541-*6+”后,输出的是(   ) A.-9 B.6 C.21 D.23 6.有如下 Python 程序段: s="我爱 13aPP14LE!" ans=res="" for x in s: if "a"<=x<= "z ": ans=ans+chr(ord(x)-32) if  "A "<=x<= "Z ": ans=ans+chr(ord(x)+32) if "0 "<=x<= "9 ": res=res+x t=ans+res print(t) A.我爱 13aPP14LE B.Apple1314 C.我爱 Apple1314 D.aPPLE1314 7.有如下Python程序段: def js(s):     c=0     for i in range(len(s)):         if"0"<=s[i]<="9"             c+=1     return c s=input() c=js(s)    #调用函数 if c==len(s):     print("yes") else:     print("no") 执行该程序段后,输出结果为“yes”,则变量s的值是(   ) A.2024xxjs B.Actionism C.20240623 D.SHA-1 8.有如下Python程序段: def trans(m,n):     if m!=0 or n!=0:         r=(m%2+n%2)%2         return trans(m//2,n//2)+str(r)     else:         return "0" a=int(input("a="));b=int(input("b=")) print(trans(a,b)) 执行该程序段,依次输入10和7,则输出的结果是(  ) A.10110 B.01011 C.01101 D.11010 9.为了学生的身体健康,现在很多的学校都会在教室中安装新风系统,它兼备了新风、净化、换气等多重功能,能够循环置换室内外空气,净化掉室外空气中PM2.5,PM10等污染物后再引入室内,再把室内污浊的,氧气不充足的空气排出室外,显著减少PM2.5、TVOC、病菌和二氧化碳,让室内24小时都保持空气清新。用Python算法控制结构描述:根据PM2.5检测网的空气质量新标准,PM2.5大于75,小于等于115称为轻度污染,大于115称为中度以上污染,设M为PM2.5值,下列选项正确的是(   ) A. if M>115:     print("中度以上污染") elif M>75:     print("轻度污染") B. if M>115:     print("中度以上污染") else:     print("轻度污染") C. if M>75 and M<=115:     print("轻度污染") else:     print("中度以上污染") D. if M>75:     print("轻度污染") elif M>115:     print("中度以上污染") A.A B.B C.C D.D 10.执行该程序段后,输出的结果为 4,则应输入的内容为( ) n=int(input("请输入一个正整数")) d={} c=0 m=0 while n>0: x=n % 10 if x not in d: d[x]=1 else: d[x]=d[x]+1 if d[x]==1: c=c+1 n=n // 10 print(c) A.135798 B.232458 C.20220320 D.24686482 11.某加密算法程序段如下所示: def jiami(x): if "A"<=x<="Z": y=chr(ord(x)+32) elif "0"<=x<="9": y=str((int(x)+1)%10) else: y=x return y mingwen=input("请输入明文") miwen="" for x in mingwen: miwen=miwen+jiami(x) print("密文为:",miwen) 输入“Abc@789”并运行程序,输出结果是(    ) A.abc8910 B.abc@890 C.ABC678 D.aBC@789 12.有如下Python程序段: a={'<':0, '()':1, '[': 2, '{':3, '>': 4, ') ':5, '] ':6, '} ':7} s1=input() s=[8,0,0,0,0,0,0,0,0] top=0; flag=True for x in s1: k=a[x] if k<4: if s[top]!=k: flag=False break top+=1 s[top] =k else: if s[top]!=k-4: flag=False   break top-=1 if flag and top==0: print ("YES") else: print ("NO") 若输出结果为“NO”,则s1输入的值是(    ) A.{} []() <> B.[()]{<>} C.{[<()>]} D.{()[<>]} 13.有如下程序: s="Happy New Year!" m=____________________ if m=="Happy":     print("Happy to you!") elif m=="Year":     print("Good Luck!") else: print("It's a fine Day!") 若想运行结果是"Good Luck!",则划线处代码可能是( ) A.s[9:13] B.s[10:13] C.s[-5:-2] D.s[-5:-1] 14.某智能终端接上温度传感器,在 BXY 输入如下图所示代码,温度传感器和主板的连接正 常,下载并运行该代码,下列描述正确的是(   ) A.若某次检测到温度为25 时,主板LED阵列会显示“笑脸”图案并持续2秒钟 B.若某次检测到温度为10 时,主板LED阵列一直显示“哭脸”图案 C.每隔2000秒通过传感器读取环境温度值,并向串口输出 D.无法确定该智能终端与电脑通信的端口号 15.有如下 Python 程序段: a=[5,3,8,9,7,3,11]   n=len(a)- 1 cnt=0 for i in range(1,n):     if a[i]==a[i+1]-a[i-1]:         cnt+=1     elif a[i]>a[i+1]-a[i-1]:         cnt+=2     else:         cnt+=3 print(cnt) 执行该程序段后,变量 cnt 的值为(  ) A.9 B.10 C.11 D.12 16.有如下 python 程序段,运行该段代码后, 程序的输出结果为(   ) s = "python" def f(t): if t == 0: return s[0] return s[t] + f(t - 1) print(f(len(s)-1)) A.python B.nohtyp C.pytho D.nohty 17.有如下Python 程序段: n=int(input(  )) s=0;i=1 while i*i<=n:    if i==n//i:       s+=1    elif n%i==0:       s+=2    i+=1 print(s) 若输入"16",该程序段执行后,输出的结果是(  ) A.3 B.4 C.5 D.6 18.如下Python程序段: s=list("bcaabca") n=len(s) for i in range(1,n):     for j in range(n-1,i-1,-1):         if s[j]=='a' and s[j-1]!='a':             s[j],s[j-1]=s[j-1],s[j] print(s) 执行该程序段后,输出的内容为(   ) A.['b', 'c', 'b', 'c', 'a', 'a', 'a'] B.['b', 'b', 'c', 'c', 'a', 'a', 'a'] C.['a', 'a', 'a', 'b', 'c', 'b', 'c'] D.['a', 'a', 'a', 'b', 'b', 'c', 'c'] 19.有如下Python程序段: 执行该程序段后,在下列选项中列表a中各元素值可能的是(  ) A.[8,0,0,3,1,6] B.[0,0,5,8,1,3] C.[1,4,0,0,6,7] D.[8,0,0,8,1,9] 20.小明家开了一个自助火锅店,按装食材盘子的颜色来区分单价,收费标准为白盘5元、绿盘8元、黄盘15元、紫盘21元、红盘30元,用餐人数少于4人则额外收取底料费用40元。小明编写了以下程序来计算费用: 1 def cost(num,white,green,yellow,purple,red): 2    diliao=0 3    if num<4: 4      diliao=40 5    return diliao+white*5+green*8+yellow*15+purple*21+red*30 6 7 print(cost(5,2,2,3,2,2)) 该程序的运行结果为(    ) A.173 B.213 C.175 D.215 试卷第1页,共3页 试卷第1页,共3页 学科网(北京)股份有限公司 参考答案: 1.B 【详解】本题主要考查If选择结构。b==2为关系表达式,s=s*2 和 s=s/2 均为赋值语句,因此B选项正确。 2.BD 【详解】本题主要考查Python程序执行。第一个for循环生成列表p,值是[1,10]之间随机整数,第二个for循环处理后4个元素,当i是奇数且生成的p[i]是偶数,则将前一个值累加到p[i],若i是偶数且生成的p[i]是奇数,则p[i]减去前一个值,分析选项B、D第三个元素14,此时i=2,如果p[2]原来生成的是奇数,则需要执行 p[ i ] -= p[ i - 1],否则不变,即p[2]不会大于10,故执行该程序段后,列表p中的元素值不可能是1, 2, 14, -9, -5, 8或6,4, 14, -7, 3, 8,故本题选BD选项。 3.D 【详解】本题主要考查Python程序的执行与调试。分析程序可知,变量i的范围是0~99,当i能整除10时,将其添加到列表a中,故a=[0, 10, 20, 30, 40, 50, 60, 70, 80, 90],a[1]=10,a[-1]=90(索引为-1即截取列表a最右端的元素),故本题选D选项。 4.C 【详解】本题主要考查对分查找算法。变量m是依次查找的下标索引值,第一次循环,m=4,f[4]=1,根据二叉树查找规则,往后查找只会在m=4的左边或右边进行查找,不会出现选项C中f[1]和f[6]同时为1的情况,故本题选C选项。 5.C 【详解】本题考查的知识点是Python程序设计综合应用。根据给定输入的字符串“541-*6+”,变量i的值为0,1,2时,执行if语句,得到st[0]=5,st[1]=4,st[2]=1,top=2。i=3时,取到“-”号,执行st[top-1]-st[top],即st[1]-st[2]=4-1=3,并且将结果3赋值给st[top-1],即st[1]=3,top=1;i=4时,取到“*”号,执行st[top-1]*st[top],即st[1]*st[0]=3*5=15,并且将结果15赋值给st[top-1],即st[0]=15,top=0;i=5时,取到“6”,执行top+=1,此时top=1,所以st[1]=6;i=6时,取到“+”号,执行st[top-1]+st[top],即st[0]+st[1]=15+6=21,并且将结果21赋值给st[top-1],即st[0]=21,执行top-=1后,top=0;i=7时,退出循环。最后打印输出st[top],即输出st[0],此时st[0]=21。故答案为C选项。 6.B 【详解】本题主要考查Python程序的执行。分析程序可知,如果取到的是小写字母,将其转化为大写字母,如果取到的是大写字母,将其转化为小写字母,逐一添加到字符串ans中;如果取到的是数字,则将其保存到变量res中,取到其他字符跳过。每次循环都执行t=ans+res,故字符串s="我爱 13aPP14LE!" 最终转变成Apple1314,故本题选B选项。 7.C 【详解】本题考查的是自定义函数。自定义函数js是统计字符串s中的数字个数,如果数字个数与字符串的长度相等(即全为数字),则输出“yes”,结合选项可知,只有C选项符合。故选C。 8.C 【详解】本题主要考查Python程序的执行。依次输入10和7,即m=10,n=7,trans(10,7)=trans(5,3)+"1"=trans(2,1)+"01"=trans(1,0)+"101"=trans(0,0)+"1101"="01101",故本题选C选项。 9.A 【详解】本题考查Python分支结构。A选项正确,首先判断PM2.5是否大于115,如果是,则输出"中度以上污染";如果不是,则判断是否大于75,如果是,则输出"轻度污染"。B选项错误,这个选项只考虑了PM2.5大于115的情况,对于大于75小于等于115的情况没有进行区分,因此不符合题意。C选项错误,这个选项没有考虑到PM2.5小于等于75的情况。D选项错误,当M大于75时,则不能再判断是否大于115。故答案为:A。 10.D 【详解】本题主要考查Python程序的执行与调试。分析程序可知,该程序实现统计输入的正整数n中不相同数字的个数。执行该程序段后,输出的结果为 4,则应输入的内容为24686482,故本题选D选项。 11.B 【详解】本题主要考查Python程序的执行。分析程序可知,该程序实现对输入的明文进行加密操作,加密规则如下:大写字母变成对应的小写字母,数字循环后移一位,其他字符不变,故输入“Abc@789”并运行程序,输出结果是abc@890,故本题选B选项。 12.ABCD 【详解】本题主要考查Python程序的执行与调试。若输出结果为“NO”,说明flag=False或top!=0,分析程序可知,选项ABCD,第一遍循环均满足k<4,且满足s[top]!=k,赋值flag=False,且退出循环,因此输出结果均是NO,故本题选ABCD选项。 13.D 【详解】本题主要考查Python程序字符串切片操作。切片操作基本表达式:object[start_index:end_index:step],step:正负数均可,其绝对值大小决定了切取数据时的“步长”,而正负号决定了“切取方向”,正表示“从左往右”取值,负表示“从右往左”取值。start_index:表示起始索引(包含该索引对应值),该参数省略时,表示从对象“端点”开始取值。end_index:表示终止索引(不包含该索引对应值),该参数省略时,表示一直取到数据“端点”。运行结果是"Good Luck!",说明m="Year",s="Happy New Year!",s[-5:-1]="Year",故本题选D选项。 14.D 【详解】本题主要考查Python程序的执行与调试。分析程序可知,若某次检测到温度为25 时,主板LED阵列会显示“笑脸”图案,2秒钟后会再次读取温度;若某次检测到温度为10 时,主板LED阵列会显示“哭脸”图案,但不会一直显示;每隔2秒通过传感器读取环境温度值,并向串口输出;无法确定该智能终端与电脑通信的端口号,故本题选D选项。 15.B 【详解】本题主要考查Python程序的执行。 当i=1时,a[i]=3,满足a[i]==a[i+1]-a[i-1],cnt=cnt+1=1; 当i=2时,a[i]=8,满足a[i]>a[i+1]-a[i-1],cnt=cnt+2=3; 当i=3时,a[i]=9,满足a[i]>a[i+1]-a[i-1],cnt=cnt+2=5; 当i=4时,a[i]=7,满足a[i]>a[i+1]-a[i-1],cnt=cnt+2=7; 当i=5时,a[i]=3,满足a[i]<a[i+1]-a[i-1],cnt=cnt+3=10,循环结束。因此执行该程序段后,变量 cnt 的值为10,故本题选B选项。 16.B 【详解】本题主要考查Python程序的执行。s = "python",len(s)=6,f(len(s)-1)=f(5)=s[5]+s[4]+s[3]+s[2]+s[1]+s[0]="nohtyp",故本题选B选项。 17.C 【详解】本题主要考查Python程序的执行。n=16,s=0,i=1 第一次循环,满足i*i<=n,满足n%i==0,s=s+2=2,i=i+1=2; 第二次循环,满足i*i<=n,满足n%i==0,s=s+2=4,i=i+1=3; 第三次循环,满足i*i<=n,不满足if判断条件,i=i+1=4; 第四次循环,满足i*i<=n,满足i==n//i,s=s+1=5,i=i+1=5,循环结束,输出的结果是5,故本题选C选项。 18.C 【详解】本题考查Python程序的执行与调试。分析程序,每轮循环从后往前依次比较,当s[j]='a'且s[j-1]!='a'时,则交换s[j]与s[j-1]。第一轮循环后s=['a', 'b', 'c', 'a', 'a', 'b', 'c'] ,第二轮循环后s=['a', 'a', 'b', 'c', 'a', 'b', 'c'],第三轮循环后s=['a', 'a', 'a', 'b', 'c', 'b', 'c'],此后不再满足if判断条件,即不再交换,s不再发生变化。因此执行该程序段后,输出的内容为['a', 'a', 'a', 'b', 'c', 'b', 'c']。故选C。 19.D 【详解】本题主要考查Python程序的执行与调试。random.randint(a,b)用于生成一个指定范围内的整数。其中参数a是下限,参数b是上限,生成的随机数n: a <= n <= b。根据语句k%5==0,后执行的语句是i=i﹣1,即重新本次循环,k的值不可能为5或者10,即对应的a中元素不可能有5或者10,排除选项B。如果满足k%3==0,即k是3、6、9,则执行a[n-1]=k,n递减1,i递增1 ,即a中的元素3、6、9一定在列表的右边,排除选项A、C,故本题选D选项。 20.A 【详解】本题主要考查Python程序的执行。分析程序可知,cost(5,2,2,3,2,2)=0+2*5+2*8+3*15+2*21+2*30=173,故本题选A选项。 答案第1页,共2页 答案第1页,共2页 学科网(北京)股份有限公司 $$

资源预览图

2.2 做出判断的分支 2024-2025学年高中信息技术教科版(2019) 必修1
1
2.2 做出判断的分支 2024-2025学年高中信息技术教科版(2019) 必修1
2
2.2 做出判断的分支 2024-2025学年高中信息技术教科版(2019) 必修1
3
相关资源
示范课
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。