4.1 程序设计语言的基础知识 2024-2025学年高中信息技术粤教版(2019) 必修1

2024-08-06
| 12页
| 87人阅读
| 0人下载

内容正文:

4.1 程序设计语言的基础知识 学校:___________姓名:___________班级:___________考号:___________ 一、选择题 1.在Python语言中,已知a=5,b=6,下列运行结果为False的是(   ) A.a<b+2 B.a==b C.a+2>=b D.a<=b 2.有如下Python程序,若要测试该程序各分支代码是否正确,下列测试数据中最恰当的是(    ) 1 x=int(input("请输入一个数:")) 2 if x<=9: 3    x+= 1 4 else: 5    x=-x 6 print(x) A.-9,0 B.10,11 C.9,10 D.8,10 3.以下运算优先级从高到低,排列正确的是(   ) A.算术运算符>关系运算符>逻辑运算符 B.逻辑运算符>关系运算符>算术运算符 C.关系运算符>算术运算符>逻辑运算符 D.算术运算符>逻辑运算符>关系运算符 4.使用Python自带的队列模块queue可以更便捷地实现队列的操作,代码如下: import queue q=queue.Queue(5) q.put("A")        #字符A入队 q.put("B") q.put("C") 已知get函数可以按照队列特性出队,若要使字符“C”从队列q中出队,正确的方法是(   ) A.直接使用语句q.get("C") B.直接使用语句q.get() C.使用两次语句q.get() D.使用三次语句q.get() 5.下列Python逻辑表达式中,值为True的是(    )。 A.3/2!=1 B.′D′<′A′ C.5%3!=2 D.′G′==′g′ 6.小明用python语言中对大小为100*100像素的图像“上.jpg”(如图所示)进行简单处理,部分代码如图: 程序执行后的图像效果是(  ) A. B. C. D. 7.下面代码的执行结果是(    ) object =["石榴",1,"香蕉","橙子","梨子"] object .append("猕猴桃") print (object) A.["石榴",1,"香蕉","橙子","梨子"] B.["石榴",1,"香蕉","橙子","梨子","猕猴桃"] C.["猕猴桃","石榴",1,"香蕉","橙子","梨子"] D.[1,"香蕉","橙子","梨子"] 8.下面Python程序段运行后输出(    ) a=87 b=12 print(a,"-",b,"=",a-b) A.a-b=75 B.a-b=a-b C.87-12=75 D.75 9.以下文本框内是一段用Python程序设计语言编写的源代码,功能是解决鸡兔同笼问题。这段源代码属于_______。 ji tu = int (input(’请输入鸡兔总数:’)) tui = int (input(’请输入腿的总数:’)) tu = (tui-ji tu*2)/2 if  int (tu) = tu:        print (’鸡:’,ji tu-tu, ’ 兔:’,tu) else:      print (’数据输入不正确’) A.软件 B.程序 C.命令 D.指令 10.以下是实现正整数序列arr升序排列的程序代码段,则画线部分代码正确的是(  ) arr=[7,4,2,13,6,5,3,6,17,1] for i in range(1,len(arr)):     key=arr[i]     j=i     while :         arr[j]=arr[j-1]         j-=1 ①j>0 and key<arr[j-1] ②j>=0 and key<arr[j-1] ③arr[j]=key ④arr[j-1]=key A.①③ B.①④ C.②③ D.②④ 11.汉诺塔游戏中,如果有n个木盘,第n个木盘是最大的木盘,用递归的方法求解,将n个木盘从A杆移动到C杆,需要借助中间的B杆。只要超过一个木盘,在移动过程中,总会存在起始杆、过渡杆及目标杆的问题。因此,定义函数时,用到了4个参数: hanoi(n,s,m,t), n表示需要移动的盘子数量,s表示盘子的起始杆,m表示中间过渡杆,t表示目标杆,如图4.3.4所示。 阅读下列程序。 def hanno(n,s,m,t):     if n==1:         print(s,'-->',t)        else:         hanno(n-1,s,t,m)         print(s,'-->',t)         hanno(n-1,m,s,t) #主程序 n=int(input('请输入汉诺塔的层数:')) hanno(n,'A','B','C') input("运行完毕,请按回车键退出...") 下列说法错误的是(  ) A.此递归没有终止结束条件 B.print(s,'-->',t)表示A杆上当前最后木盘移动到C杆上 C.hanno(n-1,s,t,m)表示A杆有n个盘子现将前n-1个盘子从A杆移动到B杆上 D.hanno(n-1,m,s,t)表示将B杆上的n-1个盘子移动到C杆上 12.在Python当中运行以下程序时,按提示输入密码为“123456”,则得到的运行结果是(    ) psw=input('请输入您的密码:') if psw=='000000':     print('欢迎您') A.请输入您的密码 B.000000 C.欢迎您 D.无结果显示 13.某Python程序如下:   d={"A":1,"B":2,"C":3,"D":4,"E":5} a=d["E"] b=d["D"] c=d["B"] s=a+b+c print(s) 程序运行后,输出的结果是(  ) A.8 B.9 C.10 D.11 14.有如下Python程序: 1 import numpy as np 2 from matplotlib import pyplot as plt 3 x=np. arange(-5,5,0.1) 4 y=np. sin(x) 5 plt. plot(x,y) 程序运行后,不显示运行结果,原因是(    ) A.代码编写错误 B.X的范围超出边界 C.Y的范围超出边界 D.缺少语句show(    ) 15.有如下Python程序段: import pandas as pd PM25= [98, 45, 120] weekday=["星期一", "星期二", "星期三"] s=pd.Series(PM25, index=weekday)     #创建Series对象时指定索引 print(s) 该程序段运行后的输出结果是(  ) A.[98 45 120] B.["星期一","星期二","星期三"叮] C. D. 16.用python程序对分辨率为500*500的白色背景图像文件white.jpg(如图所示)进行处理,代码如下: from PIL import Image im = Image.open("white.jpg") pix = im.load() width = im.size[0]   #获取图像宽度值 height = im.size[1]  #获取图像高度值 for x in range(width):     for y in range(height):         if x<=width//2 and y<=height//2:             if x%50==0 or y%50==0  :                 pix[x,y]=(0,0,0)          elif y>height//2:              if x==y or width-x==y :                  pix[x,y]=(0,0,0) im.show () white.jpg 程序执行后的图像效果是(  ) A. B. C. D. 17.在下面程序中,分别输入两个数2和3,运行的结果是(    ) A.‘222’ B.6 C.3 D.2 18.有如下Python程序段: a=[5,14,3,12,6,7,3,9,20,1] l=min(a);r=max(a) #min 取列表最小值,max 取列表最大值 maxi=3 while l<=r:     mid=(l+r)//2     cnt=0     for i in a:         if mid < i:             cnt+=1     if cnt < maxi:         r=mid-1     else:         l=mid+1 上述程序段执行结束,下列说法正确的是:(  ) A.a列表中第3大的数r B.cnt的值为2 C.l的值为12 D.mid=(l+r)//2代码执行3次 19.有如下Python程序段: def sym(d1, d2):     s1 = d1.split(",")  # 以“,”将字符串分割成列表     s2 = d2.split(",")     if len(s1) != len(s2):         return False     stk = [];     i = 0     j = 0     while i < len(s1):         stk.append(s1[i])         i += 1         while stk != [] and stk[-1] == s2[j]:             stk.pop()              #删除列表stk中的最后一个元素             j += 1     return stk == [] and i == j L1 = "@,a,b,3,c,d" L2 = input() print(sym(L1, L2)) 执行该程序段后,若输出结果为True,则L2输入的值可能是(   ) A.a,b,c,d,3 B.c,d,3,b,@,a C.b,a,@,3,d,c D.d,c,3,@,a,b 20.已知a="python",则a[1]的值为(  ) A."p" B."py" C."python" D."y" 试卷第1页,共3页 试卷第1页,共3页 学科网(北京)股份有限公司 参考答案: 1.B 【详解】本题主要考查Python表达式的运算。a=5,b=6,显然表达式a==b的值为False,故本题选B选项。 2.C 【详解】本题主要考查Python分支结构的应用。当x<=9时,执行x=x+1,反之执行x=-x,显然当x=9时,输出值x=x+1=10,故本题选C选项。 3.A 【详解】本题考查Python运算符优先级相关内容。算术运算符>关系运算符>赋值运算符>逻辑运算符。故选A。 4.D 【详解】本题考查队列的知识。根据题意可知,Queue属于是先进先出型队列,‘A’‘B’‘C’依次入队,那么‘C’要出队,‘A’‘B’必须要先出去,所以需要使用三次语句q.get()故答案为:D。 5.A 【详解】本题考查逻辑表达式。3/2 表示的是浮点数1.5,而不等于1,因此条件为True。A选项正确。字符串比较是按照ASCII码进行的,'D'的ASCII码大于'A',因此条件为False。B选项错误。5 % 3 的余数是2,等于2,因此条件为False。C选项错误。字符串比较区分大小写,'G'与'g'不相等,因此条件为False。D选项错误。故答案为:A。 6.D 【详解】本题主要考查Python程序的执行。阅读程序,转换为数字矩阵可排除选项B和选项C,用变量i来表示行,j表示列,内层循环执行完1次,即处理1列的信息,可以排除选项A。 故本题选D选项。 7.B 【详解】本题考查的是Python列表。append函数会在列表后加上相应的元素,故程序执行的结果是:["石榴",1,"香蕉","橙子","梨子","猕猴桃"]。选项B正确。 8.C 【详解】本题主要考查Python程序的执行。分析程序可知,程序段运行后输出87-12=75 ,故本题选C选项。 9.B 【详解】本题主要考查Python程序设计语言。代码就是程序员用开发工具所支持的语言写出来的源文件,是一组由字符、符号或信号码元以离散形式表示信息的明确的规则体系。根据题意,文本框内是一段用Python程序设计语言编写的源代码,这段源代码属于源程序,故本题选B选项。 10.A 【详解】本题主要考查Python程序的调试。分析程序可知,while程序实现将key,即索引i处的数字与之前的数进行比较,依次后移将key放到合适的位置,以使i及之前的整数呈升序排序,故第一空填j>0 and key<arr[j-1]。while循环结束后将key放到索引j处,故第二空填arr[j]=key,故本题选A选项。 11.A 【详解】本题主要考查递归算法及Python程序实现。此递归终止结束条件是当n=1时,执行 print(s,'-->',t) ;print(s,'-->',t)表示A杆上当前最后木盘移动到C杆上;hanno(n-1,s,t,m)表示A杆有n个盘子现将前n-1个盘子从A杆移动到B杆上;hanno(n-1,m,s,t)表示将B杆上的n-1个盘子移动到C杆上,故本题选A选项。 12.D 【详解】本题考查Python分支结构的应用。当输入密码psw是000000时,才输出欢迎您。输入其他密码均无结果显示。故选D。 【点睛】 13.D 【详解】本题考查Python输出结果。这个程序创建了一个字典d,然后使用字典中的值进行一系列操作。对程序逐步分析:字典d包含了5个键值对,其中键(Key)是字母,值(Value)是整数。a=d["E"],这里将字典d中键为"E"的值(5)赋给了变量a。b=d["D"],这里将字典d中键为"D"的值(4)赋给了变量b。c=d["B"],这里将字典d中键为"B"的值(2)赋给了变量c。s=a+b+c,将变量a、b和c的值相加,得到s的值。a的值是5。b的值是4。c的值是2。所以,s=5+4+2=11。故答案为D选项。 14.D 【详解】本题主要考查Python程序调试。plt.show()用于显示所绘制的图像。程序运行后,不显示运行结果,原因是缺少语句show( ),故本题选D选项。 15.C 【详解】本题主要考查Python程序的执行。由代码“s=pd.Series(PM25, index=weekday)”可知这是一个一维数组结构,索引是weekday,故输出的结果是,故本题选C选项 16.B 【详解】本题主要考查Python程序处理图像。分析程序可知,当满足if分支,即x<=width//2 and y<=height//2,即处理图像的第二象限,每隔50像素画一条线。当满足elif分支,即y>height//2时,即处理图像的第三、四象限,当满足y=x或y=width-x时,画一条线,选项B符合,故选B。 17.A 【详解】本题考查的是Python输入输出语句。input接收的是字符数据,int是转换为整数。分别输入两个数2和3,则a*b表示连续输出3个a里面的字符,即‘222’,选项A正确。 18.C 【详解】本题主要考查Python程序的执行与调试。l=1,r=20,maxi=3 第一遍循环,mid=10,cnt=3,l=mid+1=11; 第二遍循环,mid=15,cnt=1,r=mid-1=14; 第三遍循环,mid=12,cnt=2,r=mid-1=11; 第四遍循环,mid=11,cnt=3,l=mid+1=12,循环结束,故l的值为12,故本题选C选项。 19.C 【详解】本题考查栈结构。这段代码定义了一个名为 sym 的函数,它接受两个字符串参数 d1 和 d2。d1是进栈序列,d2是出栈序列,其目的是用于检测d2是否是d1的出栈的结果。首先,函数使用 split 方法将两个字符串以逗号为分隔符分割成列表 s1 和 s2。然后检查两个列表的长度是否相等,如果不相等则返回 False。接下来,函数创建一个空栈 stk 和两个索引变量 i 和 j。在一个循环中,函数遍历列表 s1 的每个元素,并将其添加到栈中。然后在一个内部循环中,如果栈不为空且栈顶元素等于列表 s2 中的当前元素,则弹出栈顶元素并增加索引变量 j。最后,函数检查栈是否为空且索引变量 i 和 j 是否相等。如果都满足,则返回 True,否则返回 False。经检验可知,仅有C选项符合条件。故答案为:C。 20.D 【详解】本题主要考查Python字符串操作。Python字符串的索引从0开始,a="python",则a[1]的值为"y",故本题选D选项。 答案第1页,共2页 答案第1页,共2页 学科网(北京)股份有限公司 $$

资源预览图

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