4.3运用选择结构描述问题求解过程2024—2025学年高中信息技术粤教版(2019)必修1

2024-08-03
| 16页
| 80人阅读
| 0人下载

内容正文:

4.3运用选择结构描述问题求解过程2024—2025学年高中信息技术粤教版(2019)必修1 一、选择题 1.有如下Python 程序段:   x,y,z=142,125,120 res=0 if x>y:   res=x elif y>z:   res+=z res-=5 print(res) 运行该程序段后,输出结果是(  ) A.115 B.137 C.140 D.157 2.以下Python程序段执行后,输出结果为(   ) m=28 if m%3!=0:     print(m,"不能被3整除") else:     print(m,"能被3整除") A.m不能被3整除 B.m能被3整除 C.28能被3整除 D.28不能被3整除 3.有如下VB程序段: s = Text1.Text : t = 0 For i = 1 To Len(s)     c = Mid(s, i, 1)     If c >= "0" And c <= "9" Then         t = t * 10 + Val(c)     ElseIf c >= "A" And c <= "Z" Then         t = 0     Else         t = 1     End If Next i 在文本框Text1中输入“Wen20Zhou21”(不含引号),执行程序后,变量t的值是(   ) A.2021 B.21 C.20 D.121 4.某商场做促销打折活动,消费金额500元以内打8.8折;大于500元(含500元)且小于1000元打8折;1000元以上(含1000元)打7折。小曲使用Python 编写了下面程序,第4行下划线处应填写的代码是(   ) 1 x=float(input(“消费金额:”)) 2 if  x<500: 3     s=x*0.88 4 x<1000: 5     s=x*0.8 6 else: 7     s=x*0.7 8 print(“应付金额为:”,s) A.if B.elif C.else D.while 5.有如下VB程段: Private Sub Command1_Click() Const n = 8 Dim i As Integer, a As Integer, s As String Randomize i=1 s = s + Str(Int(Rnd * 19) + 1) Do While i < n a = Int(Rnd * 19) + 1 If a Mod 2 = i Mod 2 Then s = s + Str(a) i = i + 1 End If Loop Text1.Text = s End Sub 运行程序后,文本框 Text1 中可能出现的是(  ) A.4 13 20 9 14 19 4 9 B.7 8 19 8 7 18 3 1 C.6 19 12 19 16 11 10 11 D.15 18 7 18 19 12 5 11 6.有如下VB 程序段: (    ) a(1) = 8: a(2) = 7: a(3) = 1: a(4) = 6 a(5) = 9: a(6) = 5: a(7) = 4: a(8) = 7 m = Int(Rnd * 4) * 2 + 1 For i = 1 To m - 1    k = i    For j = i + 1 To m      If a(j) < a(k) Then k = j    Next j    If i <> k Then      t = a(i): a(i) = a(k): a(k) = t    End If Next i 执行该程序段后,数组a各元素的值不可能是(   ) A.8 7 1 6 9 5 4 7 B.1 7 8 6 9 5 4 7 C.1 4 5 6 7 8 9 7 D.1 4 5 6 7 7 8 9 7.有如下VB程序段: key=Val(Text1.Text) i=0:j=9:n=0 Do While i<=j m=(i+ j)\2 n=n+1 If key<=a(m)Then j=m-1 Else i=m+1 End If Loop s=i Do While i<9 And a(i)=a(i+1) i=i+1 Loop Labe12.Caption = Str(n)+":"+Str(i+1-s) 数组元素a(0~9)的值依次为“3,4,7,8,8,8,9,9,10,12”在文本框Text1中输入“8”,点击“查找”按钮后,Labe12中输出的结果是(   ) A.3:3 B.3:4 C.4:3 D.4:4 8.if语句的格式正确的是(    ) A. B. C. D. 9.某商场做促销打折活动,消费金额500元以内打8.8折;大于500元(含500元)且小于1000元打8折;1000元以上(含1000元)打7折。小曲使用Python编写了下面程序,第4行下划线处应填写的代码是(   ) A.if B.elif C.else D.while 10.有如下VB程序段: Const n=7 Dim a(1 To n)As Integer k=Int(Rnd*(n\2))+1 For i=k+1 To 2*k j=i-k If a(i)<a(j)Then t=a(i):a(i)=a(j):a(j)=t List1.AddItem Str(a(i)) Next i 若数组元素a(l)〜a(7)的值依次为44,24,32,67,77,58,12,则执行该程序段后,在列表框List1中显示的内容可能为(    ) A.67,77,58 B.44,24,32 C.32,24 D.32,58 11.有如下VB程序段: Dim i As Integer Dim  c As String, s As String, t As String s = "2021 PYthon": t = ""   For i = 1 To Len(s)       c = Mid(s, i, 1)       If c >= "a" And c <= "z" Then          t = t + c       ElseIf c >= "0" And c <= "9" Then          t = c + t       End If   Next i Text1.Text = t 执行该程序段后,文本框Text1中显示的内容是(   ) A.2021thon B.1202thon C.thon1202 D.noht1202 12.已排序的列表a有n个整型元素,现要查找出现次数最多的值并输出。若出现次数最多的值有多个,则输出最前面的一个。实现该功能的程序段如下,方框中应填入的正确代码为(    ) c,m,v=1,1,0 for i inrange(1,n):      print(a[v]) A. B. C. D. 13.有如下VB程序段: s = Text1.Text For i = 1 To Len(s)     c = Mid(s, i, 1)     If c >= "A" And c <= "Z" Then c = ①     If c >= "a" And c <= "z" Then         m = ②         c = Chr(Asc("a") + m)     End If     s1 = s1 + c Next i Label1.Caption = s1 程序运行时,在文本框Text1中输入“ABC123xyz”,在标签框Label1中输出“bcd123yza”,则划线处的代码为(    ) A.① Chr(Asc(c) + 32)     ②(Asc(c) - Asc("a")) Mod 26 + 1 B.① Chr(Asc(c) + 32)     ②(Asc(c) - Asc("a") + 1) Mod 26 C.① Chr(Asc(c) - 32)     ②(Asc(c) - Asc("a")) Mod 26 + 1 D.① Chr(Asc(c) - 32)     ②(Asc(c) - Asc("a") + 1) Mod 26 14.某加密程序如下,已知输入的明文是:2023-03-09,运行结束后,输出的密文为 mingwen=input("请输入明文:") miwen="" for i in mingwen:   if  "0"<=i<="9" :         miwen += str((int(i)+3)%10)     else:         miwen += i print(miwen)(  ) A.5356-36-12 B.5356-36-32 C.2016-16-12 D.53563632 15.给定一个n正整数(n<=20),根据设定的保留位数,舍去一部分数字,剩下的数字按原次序组成一个最大的新数。例如原数36835132,保留4位,最大数为6532。在文本框Text1输入原数,文本框Text2中输入保留的位数,文本框Text3中输出删除后的最大数。实现上述功能的部分VB代码如下∶ Dim a(1 To 20)As String,ys As String,xs As String Dim k As Integer,h As Integer,n As Integer,i As Integer,j As Integer ys=Text1.Text:k=Val(Text2.Text) n=Len(ys):h=1 For i=1 To n a(i)=mid(ys,i,1) Next i For i=1 To k For j = h To ① If a(j) > a(h) Then ② Next j xs=xs + a(h) h=h + 1 Next i Text3.Text=xs 上述程序中划线处可选语句为(  ) ①n-k+i   ②i+k   ③n-k+1   ④j=h   ⑤h=j 则①②处语句依次是 A.③⑤ B.①⑤ C.①④ D.②⑤ 16.有如下VB程序段: Dim x As String, s As String x = Text1.Text:s="" For i= 1 To Len(x)     c = Mid(x, i,1)     If c = "a" Then         s= s + "z"     Else         s= s +Chr(Asc(c)- 1)     End If Next i 在文本框Text1 中输入“dream”,执行该程序段后,变量s的值是(   ) A.cqdal B.csdzn C.esfzn D.cqdzl 17.有如下VB程序段: s = "": k = 0 For i = 1 To 20 Step 3     If i Mod 7 = 0 Then         k = 1     ElseIf i Mod 5 = 0 Then         k = 2     End If     If i Mod 2 = 0 Then k = 3     s = s + Str(k) Next i Label1.Caption = s 该程序段运行后,标签框label1上显示的内容是(    ) A.0 3 1 2 0 3 0 B.0 3 1 2 2 3 3 C.0 3 1 3 3 3 3 D.0 3 1 3 0 3 0 18.有如下VB程序段:     Dim s1 As String, s2 As String     s1 = "what doesn't kill you makes you stronger."     s2 = text1.text     i = 1: j = 1     Do While i <= Len(s1) And j <= Len(s2)         If Mid(s1, i, 1) = Mid(s2, j, 1) Then j = j + 1         i = i + 1     Loop If j > Len(s2) Then s3 = "true" Else s3 = "false" EndIf 执行该程序段后,s3的值为“false”,则text1输入的文本可能是(   ) A."skills" B."waste" C."damage" D."note" 19.下面if语句统计满足“性别 (gender) 为男、职称(rank) 为副教授、年龄(age)小于40岁”条件的人数,正确的语句为(     )。 A.if(gender=="男" or age<40 and rank=="副教授"): n+=1 B.if(gender=="男" and age<40 and rank=="副教授"): n+=1 C.if(gender=="男" and age<40 or rank=="副教授"): n+=1 D.if(gender=="男" or age<40 or rank=="副教授"): n+=1 20.有如下VB程序: Private Sub Command1_Click() Dim a (10) As Integer n=6: Text2. Text="" m=Val (Text1. Text) For i=1 To 3 k=i j=i+1 Do While j< = m If a (k) > a(j) Then k= j j=j+1 Loop If i< > k Then Text2. Text= Str(a(k))+Text2. Text t=a(i):a(i)=a(k):a(k)=t End If Next i End Sub 如果数组元素a(1)到a(6)的值依次为“40,26,19,21,71,60”,现在运行程序在文本框text1中输入5,点击按钮Command1后文本框text2中显示的内容是(    ) A.71  40  26 B.71  60  40 C.26  19  21 D.26  21  19 试卷第1页,共3页 试卷第1页,共3页 学科网(北京)股份有限公司 参考答案: 1.B 【详解】本题考查的是Python选择语句。x,y,z=142,125,120,满足x>y,执行res=x=142,退出选择语句范围,执行res-=5,故res=142-5=137,选项B正确。 2.D 【详解】本题考查Python程序设计相关内容。m=28,执行m%3,结果为1,不等于0,输出:28不能被3整除。故选D。 3.D 【详解】本题主要考查VB程序的执行。s=“Wen20Zhou21”,t=0,c是截取字符串s位置i处长度为1的字符,当c是数字时,执行t = t * 10 + Val(c),当c是大写字母时,t=0,当c是小写字母时t=1,最后一个小写字母时“u”,此时t=1,下一个字符是“2”,则t=1*10+2=12,最后一个字符是“1”,则t=12*10+1=121,故执行程序后,变量t的值是121,故本题选D选项。 4.B 【详解】本题主要考查Python多分支结构。Python多分支结构格式是if…elif…else,故划线处填elif,故本题选B选项。 5.C 【详解】本题主要考查VB程序的执行。Rnd是随机生成[0,1)之间的数,int是取整部分,变量a的范围是[1,19],故排除A选项,当i与a同奇同偶即a Mod 2 = i Mod 2,执行s = s + Str(a),当i=1时,生成的a应是奇数(即文本框Text1中第二个数),故排除B、D选项,故本题选C选项。 6.D 【详解】本题主要考查VB程序的排序算法。m = Int(Rnd * 4) * 2 + 1,m是随机生成[1,7]之间的整数,m的最大值为7,当m=7时,即内层循环j的范围从i+1到7,数组a中最后一位不参与排序,即a(8)一直为7,故数组a各元素的值不可能是1 4 5 6 7 7 8 9,故本题选D选项。 7.C 【详解】本题主要考查VB程序查找算法。key=8,i=0,j=9,n=0,第一遍循环,满足i<=j,m=(0+9)\2=4,n=n+1=1,key=a(4)=8,j=m-1=3;第二遍循环,满足i<=j,m=(0+3)\2=1,n=n+1=2,key>a(1)=4,i=m+1=2;第三遍循环,满足i<=j,m=(2+3)\2=2,n=n+1=3,key>a(2),i=m+1=3;第四遍循环,满足i<=j,m=(3+3)\2=3,n=n+1=4,key=a(3),j=m-1=2,退出循环,s=i=3。第二个while循环,当i<9且a(i)=a(i+1)时,i递增,循环结束后i=5,i+1-s=5+1-3=3,故点击“查找”按钮后,Labe12中输出的结果是4:3,故本题选C选项。 8.D 【详解】本题考查的是Python的选择语句。选择语句格式如下: if  条件: 语句 else: 语句 故本题应选D。 9.B 【详解】本题主要考查Python多分支结构。Python多分支结构格式是if…elif…else,故划线处填elif,故本题选B选项。 10.A 【详解】本题主要考查VB程序的执行与调试。k=Int(Rnd*(n\2))+1,k是随机生成[1,3]之间的整数,当k=1时,执行完for循环后,列表框List1中显示的内容为a(2)的值即44(a(1)与a(2)交换);当k=2时,执行完for循环后,列表框List1中显示的内容为44,67;当k=3时,执行完for循环后,列表框List1中显示的内容为67,77,58,故执行该程序段后,在列表框List1中显示的内容可能为67,77,58,故本题选A选项。 11.B 【详解】本题主要考查VB程序的执行。s = "2021 PYthon",t = "",c是截取字符串s位置i处长度为1的字符,如果c是小写字母,则执行 t = t + c(即将小写字母c按顺序拼接到变量t后),如果c是数字,则执行 t = c + t(即将数字拼接到变量t前),故执行该程序段后,文本框Text1中显示的内容是1202thon,故本题选B选项。 12.A 【详解】本题考查Python选择结构应用。由于列表a为有序列表,因此计算每个数的出现次数,可以通过检查相邻两个数进行统计。阅读程序段和选项中的代码可知:变量v为次数最多的值在列表a中的索引,变量c为当前数值的出现次数,变量m已统计次数中的最大值。其算法思想是:若相邻两个数相等,则计数器c加1,否则应该将c变为初值1,首先可以排除选项B,因为该选项中else分支不符合逻辑。选项CD都存在缺陷,例如最多的一组相同的数出现在列表的最后时,均不能准确统计结果。例如a=[2,3,3,3,4,4,4,4,4],此时输出值为3,而A结构合理,可以完成各种情况的统计任务,故选A。 13.B 【详解】本题主要考查VB程序的执行。在文本框Text1中输入“ABC123xyz”,在标签框Label1中输出“bcd123yza”,可知该程序实现将文本框1中的字符串,大写变为小写,且后移一位,数字保持不变,小写字母的ASCII码比大写字母大32,故第一空,判断当变量c是大写字母时,将其变为小写字母,故填Chr(Asc(c) + 32) ,第二空,当c是小写字母时,将其后移一位,故填(Asc(c) - Asc("a") + 1) Mod 26,故本题选B选项。 14.B 【详解】本题考查的是Python选择语句。由if语句可知,如果是数字,则循环后移3个。输入的明文是:2023-03-09,则输出的密文为:5356-36-32。选项B正确。 15.B 【详解】本题主要考查VB程序的执行与调试。第二个嵌套for循环实现将保留的k个数,逐个对比找出最大的数加到字符变量xs中,外层循环变量i的范围是从1到k,故内层循环变量j的范围从h到n-k+i(在保留的n-k个值中进行比较,当外层循环是i时,则内层循环的最后一位是n-k+i),如果a(j)>a(h),则更新h的值(即将最大值赋给a(h)),故①②处语句依次是①n-k+i ⑤h=j,故本题选B选项。 16.D 【详解】本题主要考查VB程序的执行。c是截取字符串x位置i处长度为1的字符,当c="a"时,将字符“z”加到变量s中,其他字符,将其前面一位字符加到s中(即其ASCII码值减1,再将结果转为字符),故在文本框Text1 中输入“dream”,执行该程序段后,变量s的值是cqdzl,故本题选D选项。 17.C 【详解】本题主要考查VB程序的执行。s="",k=0,变量i的范围是从1-20,每次递增3,故i的可取值有1、4、7、10、13、16、19,当i是7时,k=1,当i是10时,k=2,当i是偶数(即i为4、10、16时),k=3,否则k的值保持不变,每次循环最后执行s=s+Str(k),故该程序段运行后,标签框label1上显示的内容是0 3 1 3 3 3 3,故本题选C选项。 18.C 【详解】本题主要考查VB程序的执行与调试。执行该程序段后,s3的值为“false”,表明j<= Len(s2),当Mid(s1, i, 1) = Mid(s2, j, 1)时,j才会递增,若text1输入的文本是选项A、B、D,则执行完后,j>Len(s2),不符合。当text1输入的文本是"damage",执行完后j=2,满足j<=Len(s2),故本题选C选项。 19.B 【详解】本题主要考查if条件分支。题目中的条件都是与的关系,所以要用and连接,故本题选B选项。 20.D 【详解】本题主要考查VB程序的执行。n=6,m=5,Text2. Text="",第一遍循环,i=1,k=1,j=2,执行完while循环后,i=1,k=3,a(3)=19,Text2. Text= Str(a(k))+Text2. Text="19",交换a(1)与a(3)的值,数组元素a(1)到a(6)的值依次为“19,26,40,21,71,60”;第二遍循环,i=2,k=2,j=3,执行完while循环后,i=2,k=4,a(4)=21,Text2. Text= Str(a(k))+Text2.Text="21 19",交换a(2)与a(4)的值,数组元素a(1)到a(6)的值依次为“19,21,40,26,71,60”;第三遍循环,i=3,k=3,j=4,执行完while循环后,i=3,k=4,a(4)=26,Text2. Text= Str(a(k))+Text2. Text="26 21 19",循环结束,故点击按钮Command1后文本框text2中显示的内容是26 21 19,故本题选D选项。 答案第1页,共2页 答案第1页,共2页 学科网(北京)股份有限公司 $$

资源预览图

4.3运用选择结构描述问题求解过程2024—2025学年高中信息技术粤教版(2019)必修1
1
4.3运用选择结构描述问题求解过程2024—2025学年高中信息技术粤教版(2019)必修1
2
4.3运用选择结构描述问题求解过程2024—2025学年高中信息技术粤教版(2019)必修1
3
相关资源
示范课
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。