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

2024-08-09
| 13页
| 112人阅读
| 0人下载

内容正文:

2.2 做出判断的分支 一、选择题 1.选择结构程序应用的分支语句是(   ) A.if B.for C.while D.fenzhi 2.在Python中,以下代码执行时若输入5,则输出的结果是(   ) a=int (input()) if a<8:    print(a+5) else:    print(a) A.8 B.10 C.15 D.无输出 3.以下程序代码执行结果是(  ) a,b,c=42,10,65 if a>b: min=b else: min=a if min>c: min=c print(min) A.42 B.10 C.65 D.9 4.下列代码如果从键盘输入81,那运行结果是(   )。 score=int(input("请输入分数:")) if score<=100 and score>=00:      if score>=90:          print("优秀")      elif score>=75:          print("良好")      elif score>=60:          print("合格")      else:          print("不合格") else:       print("分数不对") A.运行不了,提示有错 B.良好 C.没有任何输出 D.良好分数不对 5.在游览博馆的过程中,李华遇到了不同价格的博物馆纪念币,价格分为15元、20元,李华的手中有300元,为了预估自己最多能够买到多少枚纪念币,他要运用端制计算机程序的方法解决该问题。 count、count1赋初值为0 x、y赋初值为0 money=300 for i in range(1,15):    count1=i+(money-20*i)//15    if count1>count:       count=count1       x=i       y=(money-20*i)//15 print("最多购买纪币",count"枚") 图示中for循环语句中嵌套了if语句,关于嵌套描述错误的是(  ) A.if语句中可以嵌套for或while语句 B.if语句中可以嵌套if语句 C.Python语言中else语句可以嵌套自身 D.Python语言中for或while之间可以相互嵌套 6.在计算机中存储容量的基本单位是B(字节),文件大小通常用B、KB、MB、GB、TB等单位来表示,例如:1024B大小的文件比较适合用KB表示为1KB,依据数据量的大小,使用最适合的单位表示文件大小。下图是某学习小组编写的Python程序,输入数据量的大小(B),换算出最适合的单位表示该文件大小。该程序段中循环结构语句while与分支结构语句if的关系是(   ) A.先后顺序执行 B.while语句嵌套if语句 C.if语句嵌套while语句 D.无先后顺序执行 7.有如下Python程序, n=0;s=[1,1,2,2,2,3,1,1,3,3] for i in range(0,len(s)-1):       if s[i]==s[i+1]:           n+=1       else:           n-=1 print(n) 执行以上程序后,变量n的值为(  ) A.0 B.1 C.-1 D.2 8.有如下 Python 程序段: s=input("请输入字符串:") ans=0 for i in s:   if "a"<=i<="z":      ans+=2   elif "0"<=i<="9":      ans+=1 print(ans) 执行程序后,输入“P3fhYT8x”,则输出的结果为(    ) A.3 B.7 C.11 D.8 9.某Python程序段的功能是寻找列表中最先出现的最长连续升序段,代码如下: a=[2,5,7,6,13,4,7,8,10,9]    #列表a中的元素均为正整数 a.append(-1) b=[a[0]] maxn=1;count=1 for i in range(1,len(a)):    If ▲ :       count+=1    else:       if count>maxn:          maxn=count          b=a[i-count:i] ▲ print(b) 从上到下,划线处应填入的代码是:(   ) ①a[i]<a[i-1]   ②a[i]>a[i-1]   ③count=1   ④count=0 A.①③ B.①④ C.②③ D.②④ 10.在Python语言中,运行以下程序,输入6, 显示的运行结果是(  ) a=int(input()) # 输入一个数给变量a if a>0: print("正数") else: print("不是正数") A.6 B.不是正数 C.a D.正数 11.超市进行促销活动,若单笔消费满 200 元打九折,单笔消费满 300 元打八折(单笔消费仅享受一次打折优惠)。设顾客单笔消费 s 元,下列 Python程序能正确描述超市活动的是(   ) A. if s>=300:     s=s*0.8 else:     s=s*0.9 B. if s>=300:     s=s*0.8 if s>=200:     s=s*0.9 C. if s>=300:     s=s*0.8 elif s>=200:     s=s*0.9 D. if s>=200:     s=s*0.9 elif s>=300:     s=s*0.8 A.A B.B C.C D.D 12.有如下Python序段,执行该程序后,变量num值为(   ) num=40 if num<60:       num=60 if num==60:       num=num+20 if num>80:      num+=20 else:       num=40 print(num) A.40 B.60 C.80 D.100 13.有如下程序段: a=[[2,2,1],[8,0,4],[3,3,0],[6,-1,2],[8,1,-1]] ans=head=3 p=a[head][2] while p!=-1:     if a[ans][0] < a[p][0] :         ans=p     p=a[p][2] print(ans,a[ans][0],sep=",") 则程序运行后,下列说法正确的是(    ) A.链表数据值依次为2->8->3->6->8 B.程序输出结果为4,8 C.a[0][2]的值为1,双向链表a的头节点数据值为2 D.a[1][1]的值为0,双向链表a的尾节点数据值为8 14.某Python程序实现的功能是;运行程序输入一个四位整数,能够判断该四位整数是否存在数字重复的位。程序代码如下: n = int(input(“请输入一个四位正整数:”)) f = [0] * 10 while n > 0:    y = n % 10 ①    n=n // 10 if ② :    print(“没有重复的位。”) else:    print(“有重复的位。”) 划线处的代码应填(   ) A.① f[y] = 1        ② sum(f) < 4        #sum()将列表中所有元素求和 B.① f[y] += 1        ② sum(f) < 4 C.① f[y] = 1        ② sum(f) == 4 D.① f[y] += 1        ② sum(f) == 4 15.有Python程序段如下,执行该程序段后,a[0]~a[5]中不可能的值是(    ) import random a=[0]*6 a[0]=random.randint(1,10)   #随机生成一个[1,10]范围内的整数 i=1 while i<6:     a[i]=a[i-1]+random.randint(1,10)     if i%2==0:         a[i]=a[i]+a[i]%2     elif a[i]%2==0:         a[i]=a[i]//2     i+=1 print(a) A.[3,9,14,22,31,20] B.[3,9,20,13,20,27] C.[10,19,26,29,32,39] D.[7,17,20,13,22,12] 16.根据国家标准,室内空气质量指数的正常范围为0.5~2.5,如果空气质量指数大于2.5,则表明空气质量较差,空气质量指数小于0.5,表明空气质量较好,下列选项能正确表示这三种情况的是(   ) A. if zs>2.5:     print ("较差") elif 0.5<zs<2.5:     print ("正常") else:     print ("较好") B. if 2.5>zs>0.5:     print ("正常") elif zs<0.5:     print ("较好") else:     print("较差") C. if zs>2.5:     print ("较差") elif not zs > 0.5:     print ("较好") else:     print ("正常") D. if zs<0.5:     print ("较好") elif not zs > 2.5:     print ("正常") else:     print ("较差") A.A B.B C.C D.D 17.在Python中,表达式23//2**3的值是(    ) A.2 B.2.3 C.3 D.1331 二、填空题 18.在解决问题的过程中,常常需要对事物进行判断和选择,Python中使用if语句实现程序的分支选择,当分支比较多时可以用if … …else语句来实现。 19.某Python程序代码如下: list1=[2,3,4,5,6] m1=1 m2=2 for n in list1:    if n%3==0:        m1*=n print (m1-m2) 程序运行后,输出的结果为 20.有10个数据34,22,101,8,14,88,24,17,54,7依次存放在列表list中,有如下Python程序,当程序运行结束时,输出的值是: list= [34,22, 101,8,14,88,24,17,54,7] num=list[0] for i in range(1,10): if list[i]<num: num=list[i] print(num) 21.以下Python程序运行后,当输入20时,输出结果是 。 22.以下Python程序段的运行结果是 。 n = 36 s = 0 for i in [2,3,4,5,6,7,8]:   if n % i == 0:     s = s + 1 print (s) 三、操作题 23.完善以下程序代码完成各题 程序描述:通常我们可以采用“除2取余,倒序输出”的方法,将十进制整数转换为二进制数,例如11除以2,商是5,余数为1;再用5除以2,商是2,余数为1……,依次类推,直到商数为0,最后将余数倒序输出即为二进制数1011。 代码如下: #十进制转二进制 n=int (input('请输入一个大于0的十进制整数: ')) s= ① while ② :    if ③ :       s='0'+s    else:       s='1'+s    n= ④ print ('转换之后的二进制数: %s' %s) (1)①处的语句是( ) A.[ ]    B.’ ’    C.0    D.1 (2)②处的语句是( ) A.n>=0    B.n==0    C. n<0    D.n>0 (3)③处的语句是( ) A.n%2==0    B.n//2==0    C. n%2!=0    D.n//2!=0 (4)④处的语句是( ) A.n%2    B.n//2    C. n/2    D.n+1 试卷第1页,共3页 试卷第1页,共3页 学科网(北京)股份有限公司 参考答案: 1.A 【详解】本题主要考查Python分支结构。选择结构程序应用的分支语句是if,循环结构应用的循环语句是for和while,故本题选A选项。 2.B 【详解】本题主要考查Python程序的执行。a=5,满足if判断条件,输出a+5=10,故本题选B选项。 3.B 【详解】本题主要考查Python分支结构。分析程序可知,该程序实现输出a、b、c中的最小数,故执行结果是10,故本题选B选项。 4.B 【详解】本题主要考查Python多分支结构。从键盘输入81,满足条件75<=score<=90,输出“良好”,故本题选B选项。 5.C 【详解】本题主要考查Python嵌套语句。Python语言中else语句是if语句的一部分,因此它不可以嵌套自身,故本题选C选项。 6.A 【详解】本题考查Python程序。在程序中,while语句用于循环执行,不断地将数据量大小除以1024,直到数据量大小小于1024为止。而在while循环之后,又通过if语句判断当前数据量大小所应该使用的单位。 因此,程序中的while语句和if语句是先后顺序执行的。故答案为:A。 7.B 【详解】本题主要考查Python程序的执行。分析程序可知,如果相邻的两个数相等则n递增1,如果不相等则n递减1,s=[1,1,2,2,2,3,1,1,3,3],n初值为0,故n=0+1-1+1+1-1-1+1-1+1=1,故本题选B选项。 8.D 【详解】本题主要考查Python程序的执行。分析程序可知,该程序实现依次取字符串s中的字符,若是小写字母则ans加2,若是数字则ans加1,其他字符跳过。故执行程序后,输入“P3fhYT8x”,则输出的结果为3*2+2=8,故本题选D选项。 9.C 【详解】本题主要考查Python程序的调试。程序段的功能是寻找列表中最先出现的最长连续升序段,第一空当a[i]>a[i-1]时,count递增1,count标记升序段的长度。第二空是重新开始寻找下一个连续升序段,因此重置count值为1,故本题选C选项。 10.D 【详解】本题考查的知识点是Python分支语句应用。输入6,即a=6,满足条件a>=0,所以输出正数。故答案为D选项。 11.C 【详解】本题考查的是分支语句。选项A,遗漏了200数据的判断;选项B,300元以上的也被错判为九折;选项D,300元以上的也被错判为九折。故选C。 12.A 【详解】本题考查的是Python选择语句。num初始值40,满足num<60,执行num=60,执行后满足num==60,执行num=num+20,此时num=80,不满足num>80,执行 num=40,故最后变量num=40。选项A正确。 13.D 【详解】本题主要考查链表及Python程序。分析程序可知,a是双向链表,ans=head=3,故链表数据值依次为6->3->2->8->8;程序运行结束后,ans=1,a[ans][0]=8;a[0][2]的值为1,head=3,双向链表a的头节点数据值为6;a[1][1]的值为0,双向链表a的尾节点数据值为8,故本题选D选项。 14.C 【详解】本题主要考查Python程序的综合应用。用f[y]标记四位整数上y,该数不论出现几次,都赋值为1,即第一空填 f[y] = 1,如果sum(f)==4,说明没有重复的位,反之有重复的位,即第二空填sum(f) == 4,故本题选C选项。 15.A 【详解】本题主要考查Python程序的执行与调试。a[0]=random.randint(1,10) ,随机生成一个[1,10]范围内的整数。每次循环a[i]=a[i-1]+random.randint(1,10),如果索引i是偶数(从2开始),则执行a+[i]=a[i]+a[i]%2,执行完对应的a[i]必为偶数,即a[2]、a[4]必是偶数,[3,9,14,22,31,20]不符合条件,故本题选A选项。 16.D 【详解】本题考查Python程序设计相关内容。分析4个选项:A选项中,elif条件错误,应为0.5<=zs<=2.5;B选项中,if条件错误,应为2.5>=zs>=0.5;C选项中,elif中条件错误,应为not zs>=0.5;D选项正确。故本题答案为D选项。 17.A 【详解】本题考查的是Python表达式。**表示幂运算,优先级最高,//表示整除。23//2**3=23//8=2。故本题应选A。 18.elif 【详解】本题主要考查Python分支结构。在解决问题的过程中,常常需要对事物进行判断和选择,Python中使用if语句实现程序的分支选择,当分支比较多时可以用if …elif…else语句来实现。 19.16 【详解】本题主要考查Python程序的执行。当n取到3和6时,满足if判断条件,m1=1*3*6=18,m1-m2=18-2=16,故输出的结果是16。 20.7 【详解】本题主要考查Python程序的执行。分析程序可知,该程序求列表list的最小值,将其保存到变量num中,故输出的值是:7。 21.20 【详解】本题考查的是Python选择语句。当输入20时,x=20,满足x%5==0,执行print(x),故输出20。 22.4 【详解】本题主要考查Python程序执行。分析程序可知,变量s统计列表[2,3,4,5,6,7,8]中是36因子的个数,满足的数有2、3、4、6,故运行的结果是4。 23. B D A B 【详解】本题主要考查Python程序的综合应用。①变量s的数据类型是字符型,用于保存转换之后的二进制数,初值为空字符串,故选B选项。②依次循环,直到商数为0,故此处循环条件是n>0,选D选项。③此处判断n能否整除2,如果能整除2,则执行s='0'+s,否则执行s='1'+s,故选A选项。④每次循环之后,更新n的值为n//2,故选B选项。 答案第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
相关资源
示范课
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。