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

2024-08-11
| 13页
| 254人阅读
| 0人下载

内容正文:

2.2 做出判断的分支2024-2025学年高中信息技术教科版(2019)必修1 一、选择题 1.某Python代码如下所示,执行后输出的结果是(  ) s="5h2caeP0" s1="" s2="" for x in s:    if "0"<=x<="9":       s1=s1+x    else:       s2=x+s2 ans=s2+s1 print(ans) A.052hcaeP B.hcaeP052 C.520Peach D.Peach520 2.有如下程序代码: import pandas as pd data={ '姓名':['李商隐','欧阳修','李白',杜甫'],'借阅次数': [ 32,16,30,26]} df1=pd. DataFrame (data, columns=[ '姓名','借阅次数']) c = 0 for i in range ( len (df1 ['姓名'])): if df1.at [i,'姓名'][0]= ='李':    c+= df1.at [i,'借阅次数'] print (c) 该程序运行后,输出的内容为( ) A.46 B.48 C.58 D.62 3.为了保证图书的有效流通,在该图书馆内借书,30天及以内可享受免费,超过规定日期10天及以内,每天需交纳滞还费0.2元,逾期10天以上则每天需交纳滞还费0.5元。下列Python程序段中符合要求的是(   ) A. if day<=30:     pay=0 if day>40:     pay=2+0.5*(day-40) else:     pay=0.2*(day-30) B. if day<=30:     pay=0 elif day<=40:     pay=0.2*(day-30) else:     pay=2+0. 5*(day-40) C. pay=0 if 30<day<=40:     pay=0.2*(day-30) else:     pay=2+0.5*(day-40) D. pay=0 if day>=30:     pay=0.2*(day-30) elif day>40:     pay=2+0.5*(day-40) A.A B.B C.C D.D 4.有如下 Python 程序段: import random a= [0]*6 a[0] =random.randint(95,100) for i in range(1,6) :     a[i] = a[i-1]-random.randint(0,5)     if i%2==0 :         a[i] = a[i]+ a[i] % 10 print(a) 执行该程序段后,输出的内容不可能的是 (  ) A.[99,96,98,93,96,96] B.[99,96,97,93,99,96] C.[100,98,106,106,104,103] D.[97,94,98,98,102,100] 5.有如下 Python 程序段: import random d=[0]*6 i=0 while i<=5:    d[i]=random.randint(1,10)    if d[i]%2==i%2:       continue    i=i+1 print(d) 该程序执行后,下列输出的结果不正确的是(   ) A.[5, 8, 9, 8, 9, 2] B.[7, 4, 5, 9, 3, 6] C.[9, 6, 7, 2, 5, 4] D.[3, 8, 7, 6, 5, 4] 6.若输入的值是 6,输出结果(   )。 A.0 B.1 C.2 D.6 7.运行以下Python程序段,输入85,输出结果是(   ) s=float(input("请输入分数:" )) if  90<=s<=100:     print("A等第") elif  75<=s<90:     print("B等第") elif  60<=s<75:     print("C等第") elif  s<60:     print("D等第") A.A等第 B.B等第 C.C等第 D.D等第 8.在游览博馆的过程中,李华遇到了不同价格的博物馆纪念币,价格分为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"枚") 机器自动计算需要解决的基本问题是数据和计算规则的表示、自动存储和计算规则的自动执行,图示中Python语言规定每条if语句的条件表达式后需要使用(  ) A.分号 B.大括号 C.中括号 D.冒号 9.居民身份证号码由6位地址码、8位出生日期码、3位顺序码和1位校验码组成。倒数第2位是性别代码,奇数代表男,偶数代表女。其格式如图所示: 下列程序段可以根据存储在变量ID中的身份证号码正确输出性别的是(    ) A.gender=[“男”,“女”] print(gender[int(ID[-2])%2]) B.gender=“男女” print(gender[2-int(ID[-2])%2]) C.gender=“男” if int(ID[-2])%2==0:    gender=“女” print(gender) D.if int(ID[-2])%2==0:          gender=“女”      gender=“男” print(gender) A.A B.B C.C D.D 10.有如下python程序段: a,b=4,3 if a%2==0: if b%3!=0: c=a*b else: c=a**b else: c=a+b print(c) 该程序段运行后,变量c的值为(    ) A.64 B.12 C.7 D.81 11.下列选项中,属于Python中正确的数值表示形式的是(   ) A.3.457E-6.8 B.-3.457*10-2 C.±34.57 D.3.457E-2 12.一个闰年年份“2**2”,中间两个数字未知。以下Python程序段的功能是:输出可能的最大年份。 i=100;flag=False while i>0 and not flag: print(j) 方框中的代码由以下三部分组成: 下列选项中代码顺序正确的是(    ) A.①②③ B.①③② C.②③① D.③①② 13.现有一段代码如下,现输入“260”和“-123”,运行后输出结果分别是(    ) x=input("请输入数据") if x[0]=="-":           fz=-int(x[:0:-1]) else:           fz=int(x[::-1]) print(fz) A.062 -32 B.62 321 C.62 -32 D.62 -321 14.某 Python 程序段如下: a = [28, 29, 79, 14, 24, 43] m = int(input("请输入一个整数: ")) pos = -1 for i in range(len(a)):      if a[i] > m:            if pos == -1 or a[i] < a[pos]:                     pos = i 运行该程序段, 若输入 40, 变量 pos 的值是(       ) A.-1 B.2 C.3 D.5 15.有如下Python程序段: def f(x): if x==1: return 1 else: return x*f(x-1) s=0 for i in range(1,6): s+=f(i) print(s) 执行该程序段后,变量s的值是(   ) A.33 B.34 C.154 D.153 16.有如下 Python 程序段: import random a=[0]*6 i=0 while i<6:     a[i]=random.randint(1,10)     if a[i]%2==i%2:         continue     elif i%2==1:         a[i]=a[i]-a[i-1]     i+=1 程序运行后,列表 a 的值可能是(  ) A.[2,3,4,1,6,-5] B.[7,3,9,-1,9,-3] C.[5,9,3,3,5,1] D.[1,5,7,-2,3,5] 17.阅读下列用二分法查找输入的1000以内的整数次数的程序 x=int(input("请输入要查找的1000以内的整数:")) step=0 flag1=1 flag2=1000 while(flag1<=flag2):     mid=①       step=step+1     if mid>x:         flag2=②           elif mid<x:         flag1=③         else:                break print("查找次数为:",step) input("运行完毕,请按回车键退出...") 下列说法正确的是(  ) A.①处填(flag1+flag2)/2,②处填mid-1,③处填mid+1 B.①处填(flag1+flag2)//2,②处填mid-1,③处填mid+1 C.①处填(flag1+flag2)//2,②处填mid+1,③处填 mid-1 D.以上都不对 18.根据《铁路旅客运输规程》规定,高铁购票标准为:身高达到及超过1.5米的乘客购买全价票,高铁儿童免票身高为1.2米及以下,儿童身高高于1.2米、不到1.5米的儿童可享受半价。用下面Python程序实现上述算法,则第4行划线处代码应为(    ) 1 h=float (input("请输入身高(米): ")) 2 if h<=1.2: 3   print (“免票”) 4 elif __________: 5   print("请购买半价票" ) 6 else: 7   print("请购买全价票" ) A.h>1.5 B.h>=1.5 C.h<1.5 D.h<=1.5 19.从键盘上输入数字90,下面代码输出的结果是(   ) x=int(input("Enteranumber:")) if x>=90:    print("A") elif x>=75:    print("B") elif x>=60:    print("C") else:    print("D") A.B B.C C.D D.A 20.选择结构程序应用的分支语句是(   ) A.if B.for C.while D.fenzhi 试卷第1页,共3页 试卷第1页,共3页 学科网(北京)股份有限公司 参考答案: 1.D 【详解】本题主要考查Python程序的执行。分析程序可知,依次从字符串s中取字符,如果是数字,则顺序连接到变量s1中,非数字字符的倒序连接到变量s2中,最后将s2和s1进行连接并且赋值给ans,因此执行后输出的结果是Peach520,故本题选D选项。 2.D 【详解】本题主要考查Python程序的执行。分析程序可知,该程序实现用变量c统计姓“李”的借阅次数,李商隐和李白的借阅次数分别是32和30,故c=0+32+30=62,故本题选D选项。 3.B 【详解】本题考查的是Python选择语句。选项A中,30天及以内,会执行else分支,不符合题意;选项C中,30天及以内,会执行else分支,不符合题意;选项D中,超过30天一直执行if分支,elif分支不会被执行,不符合题意。故选B。 4.B 【详解】本题主要考查Python程序的执行与调试。a[0] =random.randint(95,100),a[0]是随机生成95~100之间的整数, 当i等于偶数时,执行 a[i] = a[i]+ a[i] % 10,即除a[0]外索引为偶数的值均为偶数,选项B中a[2]=97不符合,故本题选B选项。 5.B 【详解】本题主要考查Python程序的执行与调试。d[i]=random.randint(1,10),即随机生成1~10之间的整数,如果满足d[i]%2==i%2,则跳过本次循环,即最终生成的d[i]是奇数、偶数、奇数、偶数、奇数,因此[7, 4, 5, 9, 3, 6]不符合题意,故本题选B选项。 6.B 【详解】本题考查的是选择语句流程图。输入的值为6>=0,则执行y=1。故本题应选B。 7.B 【详解】本题主要考查Python多分支结构。输入85,满足75<=s<90条件,故执行print("B等第")。选项B正确。 8.D 【详解】本题主要考查Python分支结构。图示中Python语言规定每条if语句的条件表达式后需要使用冒号,故本题选D选项。 9.C 【详解】本题主要考查Python程序的执行与调试。奇数代表男,偶数代表女,列表和字符串的索引从0开始,因此选项A、B输出的性别相反。选项D输出的性别始终是“男”,故本题选C选项。 10.A 【详解】本题主要考查Python程序的执行。a=4,b=3,满足a%2=0,b%3=0,执行c=a**b=4**3=64,故该程序段运行后,变量c的值为64,故本题选A选项。 11.D 【详解】本题考查Python数据类型。A选项中次幂不能为小数,B选项中次幂表达错误,C选项中正负值不能连写。故选D。 12.D 【详解】本题主要考查Python程序的执行与调试。变量i表示中间未知的两个数字,题干要输出可能的最大年份,应从99开始,而i的初值为100,故首先执行③i=i-1;其次是年份的表示用变量j,故第二部分是①j=2002+i*10;最后判断j是否是闰年,若是则赋值flag为True退出循环,故②if j%4==0 and j%100!=0 or j%400==0: flag=True,故本题选D选项。 13.D 【详解】本题主要考查Python程序的分支结构。切片操作基本表达式:object[start_index:end_index:step],step:正负数均可,其绝对值大小决定了切取数据时的“步长”,而正负号决定了“切取方向”,正表示“从左往右”取值,负表示“从右往左”取值。start_index:表示起始索引(包含该索引对应值),该参数省略时,表示从对象“端点”开始取值。end_index:表示终止索引(不包含该索引对应值),该参数省略时,表示一直取到数据“端点”。当输入260时,执行else部分,输出62;输入-123时执行if部分,输出-321,故本题选D选项。 14.D 【详解】本题主要考查Python程序的执行。m=40,分析程序,当i=2时,满足2个if判断条件,pos=i=2;当i=5时,满足2个if判断条件,pos=i=5,循环结束。故运行该程序段, 若输入 40, 变量 pos 的值是5,故本题选D选项。 15.D 【详解】本题主要考查Python程序的执行。分析程序可知,函数f(x)用于计算x的阶乘。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)。执行该程序段后,变量s=f(1)+f(2)+f(3)+f(4)+f(5)=1!+2!+3!+4!+5!=1+2+6+24+120=153,故本题选D选项。 16.BC 【详解】 本题主要考查Python程序的执行与调试。a[i]=random.randint(1,10),a[i]随机生成1~10之间的整数,如果a[i]和i奇偶性一致,则保留a[i];如果a[i]是偶数,i是奇数,则a[i]=a[i]-a[i-1]。选项A,a[5]=-5,显然生成的a[i]=6-5=1与i=5奇偶性一致,应保留a[5]=1,故不可能是[2,3,4,1,6,-5]。选项BC符合程序,可行;选项D,a[3]=-2不符合题意,故本题选BC选项。 17.B 【详解】本题主要考查二分查找及Python程序实现。flag1=1,flag2=1000,二分查找的中间位置mid=(flag1+flag2)//2,故①处填(flag1+flag2)//2, mid>x,说明要查找的x在mid的左边,需要更新flag2=mid-1,否则更新flag1=mid+1,故②处填mid-1,③处填mid+1,故本题选B选项。 18.C 【详解】本题主要考查Python多分支结构的应用。不到1.5米的儿童可享受半价,因此此处elif判断条件是h<1.5,故本题选C选项。 19.D 【详解】本题主要考查Python分支结构。x=90,满足if判断条件,输出结果是A,故本题选D选项。 20.A 【详解】本题主要考查Python分支结构。选择结构程序应用的分支语句是if,循环结构应用的循环语句是for和while,故本题选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
相关资源
示范课
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。