2024-2025学年高一上学期华东师大版(2020)必修1 第二节 程序设计语言基础知识

2024-08-16
| 13页
| 70人阅读
| 0人下载

内容正文:

第二节 程序设计语言基础知识 一、选择题 1.运行下面代码,“hello”的输出次数为(   ) numbers1=[1,3,4,9] numbers2=[3,5,7] for i in numbers1:     for j in numbers2:         print("hello") A.3 B.4 C.12 D.255 2.下面对Pygame的理解不正确的是(  ) A.使用Pygame可以开发出优秀的游戏 B.Pygame是一种游戏开发引擎,基本逻辑具有参考价值 C.Pygame适合用于游戏逻辑验证、游戏入门及系统演示验证 D.Python最经典的2D游戏开发第三方库,但不支持3D游戏开发 3.在 Python 语言中,a=True,则a的数据类型是(   ) A.字符串 B.浮点型 C.整型 D.布尔型 4.运行下列Python程序后,输入41,输出结果为(   ) f=float(input("请输入一个华氏温度:")) c=5*(f-32)/9 print(c) A.5 B.5.0 C.10 D.10.0 5.运行以下Python程序,执行后m的值是(   ) list3=[3,7,4,8,2,5,10] n=len(list3) m=list3[0] for i in range(n):     if list3[i]>m:         m=list3[i] print(m) A.7 B.2 C.8 D.10 6.如下Python程序段 a=5 if a > 5 :     b = a ** 2 else:     b = a ** 3 + 1 print(b) 运行结果是(   ) A.126 B.25 C.10 D.5 7.以下表达式计算结果为False的是(   ) A.25>-24 and 25<26 B.25==25 or 25<24 C.not(26<25) D.26!=26 and 26>25 8.智能农业大棚中的自动温度控制系统,通过温度传感器每隔一定时间采集大棚中的温度,一旦监测到环境温度超过预设的最高温度40℃,控制系统会启动通风和喷水子系统实现降温;如果温度低于预设的最低温度18℃,控制系统会启动加热器,给大棚升温。用变量t表示温度传感器采集的温度值,下列不能实现该系统温度控制功能的算法是(   ) A. if t>40:     x="启动降温系统" else:     x="启动升温系统" B. if t>40:     x="启动降温系统" else:     if t<18:         x="启动升温系统" C. if t<18:     x="启动升温系统" if t>40:     x="启动降温系统" D. if t<18:     x="启动升温系统" elif t>40:     x="启动降温系统" A.A B.B C.C D.D 9.下列Python表达式中,值为True的是(   ) A."TZ" in "TaiZhou" B.12//3**2==16 C."3123"<"761" D.2024%100!=1243//10%100 10.有如下Python程序段: matrix=[[1,1,1,1],[2,2,2,2],[3,3,3,3],[4,4,4,4]] k=int(input()) tot=0 for i in range(4):     for j in range(4):         if i+j=k:             tot+=matrix[i][j] print(tot) 若输入2,则输出为(   ) A.12 B.10 C.8 D.6 11.某对分查找的 Python程序如下: s=[9,12,25,39,43,55,61,72,88,97] i=0;j=len(s)-1;t=0 key=int(input()) while i<=j: m=(i+j+1)//2 if s[m]>key: j=m-1; t=t+1 else: i=m+1; t=t*2 print(t) 当输入不同的 key值时,运行程序后,输出的结果不可能是(   ) A.5 B.4 C.3 D.2 12.有下面一段程序,运行该程序后s的值为(    ) A.3 B.5 C.8 D.10 13.如下Python程序段: s=input(a) p="";key=3 for ch in s:     if "0"<=ch and ch<="9":         p+=srt((int(ch)+key)%10)     else:         p=ch+p print(p) 若输入a的值为“GK2023”,则输出p为(   ) A.GK3202 B.KG5356 C.GK5356 D.KG2023 14.函数range(6,10)生成的序列中元素的个数是(   ) A.3 B.4 C.5 D.6 15.有如下Python程序段: from random import randint from math import sqrt a=[] for i in range(6):     a.append(randint(5,10)*2) for i in range(6):     for j in range(len(a)-1,i,-1):         if a[j]>a[j-1]and sqrt(a[j])!=int(sqrt(a[j])):             a[j],a[j-1]=a[j-1],a[j] print(a) 执行该程序段后,输出结果不可能的是(    ) A.[20,12,12,10,16,10] B.[20,18,16,14,10,14] C.[18,16,14,12,12,10] D.[16,14,12,10,10,10] 16.某客户购买的新能源汽车价格为t万元,可享受当地政府购车补贴,补贴标准如下:价格20万元(不含)以下,补贴0.25万元;价格20万元(含)至30万元(不含),补贴0.5万元;价格30万元(含)以上,补贴1万元。在下列选项中,计算实际购车价格p的程序代码正确的是(   ) A. p=t-0.25 if t>=20:     p=t-0.5 elif t>=30:     p=t-1 B. p=t-1 if t<20:     p=t-0.25 elif t<30:     p=t-0.5 C. p=t-0.25 if t>=30:     p=t-1 if t>=20:     p=t-0.5 D. p=t-1 if t>=20:     p=t-0.5 else:     p=t-0.25 A.A B.B C.C D.D 二、填空题 17.在Python中,字符串常量可以用单引号或 括起来。 18.input( )函数的返回值的类型是 。 19.求s=1+1/3+1/5+1/7+1/9+…+1/99的和,在如下程序横线空白处填入正确的表达式 。 s=0 for i in range(1,100,2):      print(s) 20.用Python表达式补充完成如下程序,统计四位奇数中满足能被23和19整除的总数。 s=0 for i in range(1001,10000,2): :     s=s+1 print(s) 三、判断题 21.用高级语言编写的程序也不能直接被计算机识别和执行,必须经过编译程序或解释程序将其翻译成机器语言。( ) 22.汇编语言是面向机器的语言,其可读性相对较好,容易被移植。( ) 23.在Python3.x语言中,input()函数的返回值类型是字符串。( ) 24.Python语言的变量名要区分英文字母的大小写。( ) 四、操作题 25.请为老师完善一个课堂上随机抽取学生回答问题的算法。已知“从5位学生中随机抽取1位学生”的算法,学生名单、流程图、代码如下表所示。 Stuname[0] Stuname[1] Stuname[2] Stuname[3] Wangmin Zhangyi Lili Songju import random stuname=[“Wangmin”,“Zhangyi”,“Lili”,“Songju”,“Wuyi”] x=random.randint(0,4) print(stuname[x]) (1)关于语句“import random”与“x=random.randint(0,4)”,以下分析正确的是( ) A.导入Python random模块,随机函数random.randint(0,4)生成随机[0,4]之间的整数 B.随机函数,random.randint(0,4)能随机生成一个任意整数 C.随机函数,random.randint(0,4)能随机生成[1,5]之间的实数 D.随机函数,random.randint(0,4)能随机生成一个任意实数 (2)关于列表status和变量m的作用,以下理解正确的是( ) A.列表status是用于存储下标与stuname对应的学生是否被点过名的状态;变量m无任何作用 B.列表status是用于存储下标与stuname对应的学生是否被点过名的状态,值0表示“没被点名”,1表示“已被点过名”;变量m用来计数统计学生人数是否大于2个 C.列表status是用于存储0或1,与数组stuname无关;变量m用来计数统计学生人数是否大于2个 D.列表status是用于存储0或1,与数组stuname有关;变量m用来计数统计学生人数是否大于2个 (3)请将代码横线处补充完整,使算法满足如下功能:从5位学生中随机抽取2位学生,每次抽取的学生不能重复。 stuname=[“Wangmin”,“Zhangyi”,“Lili”,“Songju”,“Wuyi”] #以下初始化列表status,0表示未被点过名 status=[0,0,0,0,0]    #以下随机显示2位学生姓名,要求不重复 import random m=0 for i in range(0,2):     while True:         x=①         print(x)         if ② :             print(stuname[x])             status[x]=1             m=m+1         if m>=2:  #点名学生人数满足2个跳出循环终止统计             break 试卷第1页,共3页 试卷第1页,共3页 学科网(北京)股份有限公司 参考答案: 1.C 【详解】本题考查Python程序设计相关内容。分析程序段,外循环4个数据,内循环3个数据,3×4=12次。故本题答案是C选项。 2.D 【详解】本题考查Python基础。 Python最经典的2D游戏开发第三方库,但不支持3D游戏开发。这个选项是不完全正确的。虽然Pygame被广泛认为是Python中用于2D游戏开发的经典第三方库,并且它确实提供了丰富的2D图形和声音处理功能,但它并非完全不支持3D游戏开发。Pygame本身主要聚焦于2D,但开发者仍然可以使用Pygame结合其他库(如OpenGL)来实现3D图形的渲染。故正确答案为:选项D。 3.D 【详解】本题考查Python数据类型。在Python中,布尔型常量的值是True和False。故选D。 4.B 【详解】本题考查Python程序执行。float ()函数是Python内置的一个函数,用于将其他数据类型转换为浮点数类型。输入41,则c=5*(f-32)/9=5*9.0/9=5.0。故选B。 5.D 【详解】本题考查Python程序。首先,list3=[3,7,4,8,2,5,10],通过n=len(list3)计算出列表的长度n=7。然后,初始化m=list3[0]=3。接下来进入for循环,从i=0到i=6。当i=0时,list3[0]=3,不大于m,m不变。当i=1时,list3[1]=7,大于m,更新m=7。当i=2时,list3[2]=4,不大于m,m不变。当i=3时,list3[3]=8,大于m,更新m=8。当i=4时,list3[4]=2,不大于m,m不变。当i=5时,list3[5]=5,不大于m,m不变。当i=6时,list3[6]=10,大于m,更新m=10。循环结束,最终m的值为10。故答案为:D。 6.A 【详解】本题考查Python分支结构的应用。a=5,满足else条件,执行b=a**3+1=5**3+1=126。故选A。 7.D 【详解】本题考查表达式的运算。逻辑运算符or两边值均为假时值才为假,否则值为真;逻辑运算符and两边值均为真时值才为真,否则值为假,not是取反。26!=26→False,则26!=26 and 26>25值为False。其余选项表达式值均为True。故选D。 8.A 【详解】本题考查算法。根据题意,系统需要在温度高于40℃时启动降温系统,在温度低于18℃时启动升温系统。选项A的算法中,如果温度大于40℃,会启动降温系统;否则,即使温度在18℃到40℃之间,系统也会启动升温系统,这与题意不符。选项B、C和D都能正确判断温度是否超过40℃或低于18℃,并分别启动相应的系统。故答案为:A。 9.C 【详解】本题考查的是Python表达式。"TZ" in "TaiZhou"、12//3**2==16、2024%100!=1243//10%100值为False,"3123"<"761"值为True。故选C。 10.D 【详解】本题考查Python程序。程序的功能是计算二维列表matrix中满足条件i+j=k的元素之和,其中k是用户输入的整数。解析如下:给定二维列表matrix,每个子列表都包含相同的四个整数。用户输入一个整数k。初始化变量tot为0,用于累加满足条件的元素之和。使用嵌套循环遍历matrix的每个元素:外层循环i控制行索引。内层循环j控制列索引。判断条件i+j==k,如果成立,则将matrix[i][j]的值加到tot中。最后输出变量tot的值,即满足条件i+j=k的元素之和。若输入2,根据题目的计算,满足条件的元素有(0,2),(1,1),(2,0),它们分别对应的值是1,2,3,因此最终的输出是1+2+3=6。故答案为:D。 11.A 【详解】本题考查对分查找相关内容。结合对分查找算法思想和程序段,构造二叉树,如图所示:。依据while循环,查找成功时:查找25、12、43、61时,t的值为4;查找9、39、43时,t的值为6;查找55时,t的值为3;查找88时,t的值为0;查找72时,t的值为2。查找失败时,t的取值范围是{0,2,3,4,6}。即无论查找成功与否,t的值都不可能是5。故本题答案是A选项。 12.B 【详解】本题主要考查Python程序的执行。当list[i]>0且i<=n时,s递增,i递增,否则退出循环。当list[5]=-9<0,退出循环。故s=0+1+1+1+1+1=5,故运行程序后s的值为5,故本题选B选项。 13.B 【详解】本题考查Python程序分析。这段代码的功能是对输入的字符串进行处理。如果字符是数字,则将其加密(通过加上一个密钥然后取模10),如果字符不是数字,则将其放在结果字符串的前面。依次输入遍历GK2023,处理字母结果为KG,数字2,0,2,3依次加3取余10,结果为5,3,5,6。故正确答案为选项B。 14.B 【详解】本题考查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(6,10)生成:6、7、8、9共4个。故选B。 15.B 【详解】本题考查程序分析。程序可知为排序算法。特殊数值为16。B选项不可能出现。a[5]>a[4],故需要交换变量值,但B选项未交换,不可能出现。其它选项可能出现。故选择B。 16.B 【详解】本题考查的是Python多分支语句。选项A中,如果价格30万元(含)以上,满足if语句,不会执行elif语句,补贴0.5万元,不符合题意;选项C中,如果价格30万元(含)以上,也满足第二个if语句,补贴0.5万元,不符合题意;选项D中,如果价格30万元(含)以上,满足if语句,补贴0.5万元,不符合题意。故选B。 17.双引号 【详解】本题考查Python。在Python中,字符串常量既可以使用单引号''括起来,也可以使用双引号""括起来。故答案为:双引号。 18.字符串型 【详解】本题考查输入函数相关知识。input()函数是输入函数,用于接受一个标准输入数据,函数返回值是“字符串”类型。故本题答案是:字符串型 19.s=s+1/i 【详解】本题考查Python程序。题目要求计算序列1+1/3+1/5+1/7+...+1/99的和。可以通过for循环遍历1到99之间的所有奇数,并将每个数的倒数累加到变量s中。在这个程序中,for i in range(1,100,2)表示从1开始到100(不包括100),以步长2进行循环。每次循环中,s=s+1/i将当前奇数的倒数累加到s中,最后输出s的值即为所求的和。故答案为:s=s+1/i。 20.if i %23==0 and i %19 ==0 【详解】本题考查的是Python循环与选择语句。通过循环变量i遍历所有四位数的奇数,判断能否被23和19整除,只要看除完后的余数是否为0,故画线处代码为:if i %23 == 0 and i %19== 0。 21.正确 【详解】本题主要考查程序设计语言的描述。用高级语言编写的程序也不能直接被计算机识别和执行,必须经过编译程序或解释程序将其翻译成机器语言,表述正确。 22.错误 【详解】本题考查汇编语言的描述。汇编语言是面向机器的语言,其可读性相对较好,但不容易被移植,开发难度大。故表述错误。 23.正确 【详解】本题考查Python函数。input()函数用于从标准输入读取一行,并将其作为字符串返回。无论用户输入什么内容,input()函数返回的值始终是字符串类型。故说法正确。 24.正确 【详解】本题考查Python。Python语言的变量名是区分英文字母大小写的,这意味着在Python中,变量名var和Var被视为两个不同的变量。故说法正确。 25. A B x=random.randint(0,5) status[x]==0 【详解】本题考查程序分析。 (1)A选项是正确的。import random确实导入了Python的random模块,该模块提供了生成随机数的功能。random.randint(0,4)函数则用于生成一个指定范围内的随机整数,包括两端的值,即在这个例子中,它会生成0到4之间的一个随机整数(包括0和4)。B这个选项是错误的。random.randint(0,4)生成的整数是有限制的,即在0到4之间,而不是任意整数。C这个选项也是错误的。random.randint(0,4)生成的是整数,而不是实数,且范围是在0到4之间,而不是1到5之间。D选项同样是错误的。random.randint(0,4)生成的是整数,不是实数,且范围有限制。故正确答案为:选项A。 (2)选项A,错误。变量m用来计数统计被点名的学生人数是否大于2个。选项C,错误。列表status是用于存储0或1,与数组stuname有关。选项D,错误。并没有说清楚列表status是用于存储0或1,与数组stuname有关的原因。故正确答案为:选项B。 (3)①变量x存储产生的随机数,故列表的下标。故正确答案为:x=random.randint(0,5)。②if语句判断随机产生的学生是否已经被点过名,故需要判断点名状态值,故正确答案为:status[x] == 0。 答案第1页,共2页 答案第1页,共2页 学科网(北京)股份有限公司 $$

资源预览图

2024-2025学年高一上学期华东师大版(2020)必修1 第二节 程序设计语言基础知识
1
2024-2025学年高一上学期华东师大版(2020)必修1 第二节 程序设计语言基础知识
2
2024-2025学年高一上学期华东师大版(2020)必修1 第二节 程序设计语言基础知识
3
相关资源
示范课
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。