2024-2025学年高中信息技术浙教版(2019)必修1 第三章 算法的程序实现

2024-08-04
| 10页
| 43人阅读
| 0人下载

内容正文:

第三章 算法的程序实现 学校:___________姓名:___________班级:___________考号:___________ 一、选择题 1.在Python中要交换变量x和y中的值,无法实现的语句组是(   ) A.z=x;x=y;y=z B.x=y;y=x C.х,у=у,x D.x=x+y;y=x-y;x=x-y 2.已知x=”HELLO”和和y=”WORLD”,则x+y=(    ) A.WORLD B.HELLO C.HELLOWORLD D.HD 3.有如下Python程序段: import random q = [0] * 5 head = tail = 0 for i in range(5):     if random.randint(0,1)== 0:        q[tail] = random.randint(1,9)        tail += 1     elif head != tail and q[tail - 1] < q[head]:        q[tail] = q[head]        head += 1        tail += 1 执行该程序段后,q的值不可能是(   ) A.[0, 0, 0, 0, 0] B.[5, 4, 3, 2, 1] C.[5, 8, 3, 0, 0] D.[0, 5, 6, 0, 0] 4.一个3位正整数,每位上的数字的3次幂之和等于它本身,这类数称为水仙花数。小芸编写Python程序输出100至999之间的所有水仙花数,代码如下 1  for i in range(100,1000): 2      s=str(i) 3      bai=s[0] 4      shi=s[1] 5      ge=s[2] 6      if int(s)==bai**3+shi**3+ge**3: 7          print(i,"是水仙花数") 程序调试时报错,请分析程序出错的原因(   ) >>>%Run‘水仙花数.py' Traceback(most recent call last): File"D:\KINGSTON\123\水仙花数.py",line 6,in<module> If int(s)==bai**3+shi**3+ge**3: TypeError:unsupported operand type(s) for** or pow():'str' and 'int’ A.第2行不能使用str()函数把变量i的值转换为字符串类型 B.第6行的幂运算不能使用**运算符,应该使用*运算符 C.第6行的bai、shi、ge三个变量是字符串类型,不能进行幂运算 D.第7行输出格式错误,应该使用双引号 5.在Python语言中,执行“f1oat(5)”函数后的结果是(   ) A.‘5’ B.5 C.5.0 D.“5” 6.在下面Python程序代码中,①和②处应该填的代码是(   ) sc=float(input("请输入期末考成绩sc=")) if sc>=90:       print("优秀") ① sc>=80:       print("良好") elif sc>=60:       print("合格") ②:       print("不合格") A.if  else B.else  elif C.elif  else D.elif  elif 7.能够被计算机直接接受和执行的语言是(   ) A.汇编语言 B.自然语言 C.机器语言 D.高级语言 8.对于不等于0的整数a和b,若表达式a%b==1成立,则表明(   ) A.a与b一定相等 B.a总比b大1 C.a不是负数,b肯定也不是负数 D.a比b的整数倍多1 9.某二分查找算法的 python 程序段如下, 运行该段代码后, 输出的结果不可能是(   ) import random a = [10,20,30,40,50,60,70,80] key = random.choice(a); i,j = 0,len(a)-1 ; s = "" while i<=j: m = (i+j)//2 if key == a[m]: s = s+"M"; break elif key < a[m]: j = m-1; s = s+"L" else: i = m+1; s = s+"R" print(s) A.LLM B.LRM C.RRRM D.RRLM 10.已知字典dict1={"01":"Jan","02":"Feb","03":"March","04":"April","05":"May"},现要在字典dict1中增加一个键为"06"值为"June"的元素,下列语句能实现的是(    ) A.dict1[06]="June" B.dict1["06"]=["06":"June"] C.dict1["06"]={"June"} D.dict1["06"]= "June" 11.在Python语言中,下列选项中能实现输入数据的函数是(    ) A.input() B.print() C.show() D.abs() 12.下列选项中,可以实现导入Python语言的非内置模块功能的是(  ) A.add turtle B.input pygame C.def sys D.import math 13.已知a、b为整型变量,下列表达式的值一定为True的是(   ) A.a!=b B.a>=b and b>=a C.a>=b or b>=a D.a<=b 14.小曲使用Python 编写了一个计算某月天数的程序,她先将十二个月的天数存储到列表中,程序会根据用户输入的月份,输出该月份有多少天。程序第3行划线处应填写的代码是(   ) 1  m=int(input("请输入月份(1~12):")) 2  d=[31,28,31,30,31,30,31,31,30,31,30,31] 3   4  print(n) A.n=d[m] B.n=d[0] C.n=d[m+1] D.n=d[m-1] 15.下列Python表达式值为6有哪几项。(    ) A.19//3 B.19/3 C.2**3 D.2*3 16.模拟微信抢红包功能的Python程序代码如下,程序运行结果如图所示。 import random n=int(input(“输入红包总数(个):”)) m=int(input(“输入红包金额(元):”))*100-n #金额以“分”为单位并保证每个人至少抢到一分钱 for i in range(__________,1): if   i==n: x=m else: x=random. randint(0,int(m/(n-i+1)*2)) #random. Randint(a,b):随机生成一个[a,b]范围内的整数 m=m-x print(”第”i,”个红包金额为:”(x+1)/100,”元”) 上述程序段中划线处应该填入的代码是(   ) A.1,n+1 B.1,n C.0,n D.0,n+1 17.Python语言自带的IDLE环境的退出命令是( ) A.Esc B.close C.回车键 D.exit 18.Python中,L=['a', 'b', 'c', 'd', 'e', 'f', 'g'],L[3:5]的值是(   ) A.['c','d'] B.['c','d','e'] C.['d','e'] D.['d','e','f'] 19.在Python中,已知a=-25,则print(abs(a))输出结果是(   ) A.-5 B.5 C.-25 D.25 20.以下Python程序, 输出结果是(  ) x=int(3.0) x=x+2 print(x**2) A.25 B.10 C.25.0 D.10.0 试卷第1页,共3页 试卷第1页,共3页 学科网(北京)股份有限公司 参考答案: 1.B 【详解】本题主要考查Python赋值语句。语句x=y;y=x执行后x和y的值相等均为y的值。其余选项均可以完成x和y交换,故本题选B选项。 2.C 【详解】本题主要考查Python字符串操作。已知x=”HELLO”和和y=”WORLD”,则x+y=”HELLOWORLD”,故本题选C选项。 3.D 【详解】本题考查Python程序设计相关内容。这段代码初始化了一个长度为5的列表q,并将所有元素设置为0。然后使用for循环遍历5的范围,并检查在0和1之间随机生成的整数是否等于0。如果等于0,则生成另一个1到9之间的随机整数,并将其分配给列表q的索引tail处的元素。如果不等于0,则检查列表q的索引tail-1处的元素是否小于列表q的索引head处的元素。如果小于索引头处的元素,则将列表q的索引头处的元素分配给列表q的索引尾处的元素,将头部增加1并将尾部增加1。列表q的最终值取决于随机生成的整数,但是其第一项一定会执行一次进队,所以D选项的第一项的值为0是不可能的。故本题答案是D选项。 4.C 【详解】本题考查的是Python程序调试与运行。应为 s=str(i),s是字符串,故bai、shi、ge三个变量是字符串类型,不能进行幂运算。故本题应选C。 5.C 【详解】本题主要考查Python函数的应用。 float() 函数用于将整数和字符串转换成浮点数。 执行“f1oat(5)”函数后的结果是5.0,故本题选C选项。 6.C 【详解】本题考查Python基础。第二个条件语句sc>=80前面缺少elif关键字,应该加上elif。最后一个条件语句没有对应的print语句的关键字,应该添加上else。故选择C。 7.C 【详解】本题考查的是计算机语言。使用机器语言编写的程序可以直接被计算机识别并执行,汇编指令需要汇编程序转换成机器指令后计算机才能执,高级语言编写的程序只能通过编译器编译后才能被计算机执行。故选C。 8.C 【详解】本题考查Python表达式的运算。若a和b相等,则a%b=0,选项A错误。若a=1,b=2,则a%b=1,排除BD选项。若a=1,b=-2,则a%b=-1,因此a不是负数,b肯定也不是负数。故选C。 9.D 【详解】本题主要考查二分查找及Python程序实现。random.choice()方法用于返回一个列表、元组或字符串中的随机项。该二叉树如下图,分析程序可知,当遍历左子树执行,s = s+"L";当遍历右子树执行,s = s+"R";当查找到该树时,执行s = s+"M",并退出循环。由图可知,70节点没有左子树,故输出的结果不可能是RRLM,故本题选D选项。 10.D 【详解】本题主要考查Python字典数据类型。字典是通过键key插入数据,格式是:字典[key]=value,故现要在字典dict1中增加一个键为"06"值为"June"的元素,可以通过语句dict1["06"]= "June"实现,故本题选D选项。 11.A 【详解】本题考查Python函数相关内容。input()是一个内置函数,接受一个标准输入数据,返回为string类型。print()用来输出指定的字符串或数值到标准输出装置的函数。show()是一个用于显示图形的函数,可以在Python程序中直接调用。abs()接受一个数字作为参数,并返回该数字的绝对值。故本题答案是A选项。 12.D 【详解】本题主要考查Python模块导入。Python导入非内置模块的关键字是import,故本题选D选项。 13.C 【详解】本题考查Python基础。 a和b的关系为有三种可能即大于、小于或等于,选项C表达了这三种关系,故正确答案为:选项C。 14.D 【详解】本题主要考查Python程序的执行。Python中,列表的索引从0开始,因此程序第3行划线处应填写的代码是n=d[m-1],故本题选D选项。 15.AD 【详解】本题主要考查Python表达式的运算。19//3=6,19/3=6.334,2**3=8,2*3=6,故本题选AD选项。 16.A 【详解】本题主要考查Python程序调试。一共有n个红包,故变量i的范围是从1~n,每次递增1,range(1,n+1,1)表示从1~n+1(但不包括n+1),故划线处应该填入的代码是1,n+1,故本题选A选项。 17.D 【详解】本题主要考查Python基本知识。Python程序设计语言默认安装时,会有一个自带的集成开发环境IDLE。要创建Python程序文件,可以利用IDLE中的“文件“菜单。可使用exit()或quit()退出Python,因此D选项正确。 【点睛】 18.C 【详解】本题主要考查Python列表切片操作。列表的索引从0开始。切片操作基本表达式:object[start_index:end_index:step],step:正负数均可,其绝对值大小决定了切取数据时的“步长”,而正负号决定了“切取方向”,正表示“从左往右”取值,负表示“从右往左”取值。start_index:表示起始索引(包含该索引对应值),该参数省略时,表示从对象“端点”开始取值。end_index:表示终止索引(不包含该索引对应值),该参数省略时,表示一直取到数据“端点”。故L[3:5]=['d','e'],选项C正确。 19.D 【详解】本题主要考查Python表达式的运算。abs是求绝对值函数,已知a=-25,abs(a)=25,故本题选D选项。 20.A 【详解】本题考查的是Python程序基础。int转换为整型,x=int(3.0)=3,x=x+2=3+2=5,x**2=5**2=25。故选A。 答案第1页,共2页 答案第1页,共2页 学科网(北京)股份有限公司 $$

资源预览图

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