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

2024-08-13
| 12页
| 206人阅读
| 0人下载

内容正文:

4.4运用循环结构描述问题求解过程2024—2025学年高中信息技术粤教版(2019)必修1 一、选择题 1.某算法的部分流程图如图所示,若n的值为8,key的值为40,数组元素a[0]至a[n-1]依次存放10,20,30,40,50,60,70,80,执行这部分流程后,输出c的值为(   ) A.-2 B.-1 C.0 D.1 2.有下列Python程序段: s1="pytorch'';s2="python";s="" i=0;j=0 while i<len(s1)and j<len(s2):     if s1[i]>s2[j]:         s=s+s1[i]     else:         j+=1     i+=1 执行以上程序段后,s中的值是(   ) A."or" B."ch" C."on" D."to" 3.下列Python 程序用于计算0到100之间的偶数和,程序第2行下划线处应填入(   ) 1  s=0 2  for i in range(0, , ): 3      s =s+i 4  print(s) A.100   1 B.100   2 C.101  1 D.101   2 4.有如下程序段: n =Val(Text1. Text) s=0 Do While n <> 0 x = n Mod 10 s=x+s n=n\10 Loop 在文本框Text1中输入“20201119”,执行该程序段后,s的结果为( ) A.16 B.1119 C.2020 D.9 5.下列程序的输出结果是(   ) listl=[3,4,8,6,9] c=0;i=0 while i<len(listl):      if listl [i]%3==0:           c+=listl [i]      else:           c-=listl [i]      i+=1 print(c) A.18 B.6 C.12 D.6 6.在 Python 语言中,在 while 语句后面的条件不满足时就退出循环,但是,如果我们想在循环的过程中直接退出循环体,使用的命令是(  ) A.len B.end C.break D.del 7.以下程序代码段输出是(  ) sum=0 for i in range(1,11): sum + = i print(sum) A.45 B.55 C.66 D.75 8.如图所示的车牌,经过如下Python程序处理后,“cp.txt”文件得到的效果是(    ) from PIL import Image f=open(“cp.txt”,“w”)            #以写入模式打卡“cp.txt”文件 im=Image.open(“cp.jpg”) im=im.convert(“L”) im=im.resize((90,21))            #将图片尺寸大小修改为90*21 pix=im.load()                    #读取所有像素点的颜色值 for j in range(im.size[1]):    ans=“”    for i in range(im.size[0]):       if pix[i,j]>=128:          r=“*”       else:          r=“”       ans+=r    ans=ans+“\r ”                    #“\r ”表示回车换行    f.write(ans) f.close() A. B. C. D. 9.执行如下Python程序后,f2的值为(   ). A.3 B.4 C.5 D.6 10.有如下Python程序段: import random defselect(s,k):     for i in range(k):        j=i+1        if j< len(s):            s=s[:j]+s[j+1:]        else:            s=s[:len(s)-1]     connect(i,s,k) def connect(i,s,k):     list1=''     if i< k-1:         listl=listl+s+'-'     else:         list1=listl+s     print(listl,end='') s="hello" k=random.randint(1,4) select(s,k) 执行该程序段后,输出结果可能是(    ) A.hllo- B.hllo-hll-hl C.hllo-hlo D.hllo-hlo-hl-1 11.以下Python程序的基本结构是(   ) m=1 for I in range(1,5): m=2*m print(m) A.选择结构 B.综合结构 C.顺序结构 D.循环结构 12.有如下Python程序段: a=[2,1,3,4,5] c=0 for i in range(2,5):     if a[i-2]+a[i-1]==a[i]:            c+=1 print(c) 该程序段运行后,显示的c的值是 (   ) A.1 B.2 C.3 D.4 13.有如下VB程序段: Dim a(1 To 6) As Integer Dim i As Integer, j As Integer, n As Integer Randomize For i = 1 To 6     a(i) = Int(Rnd * 50)     If a(i) < 25 And i Mod 2 = 0 Then         a(i) = 50 - a(i)     Else         a(i) = Int(Rnd * 10) * 2     End If Next i For i = 1 To 6 - 1     For j = 1 To 6 - i - 1             If a(j) > a(j + 2) Then                 temp = a(j): a(j) = a(j + 2): a(j + 2) = temp             End If     Next j Next i 执行上述程序段后,a数组的各元素可能是(    ) A.4,2,8,27,16,35 B.2,4,8,16,27,35 C.2,4,8,16,25,35 D.4,2,8,25,16,35 14.有如下Python程序段: x="技术选考" y="" for i in range(len(x)): y=x[i]+y 程序段执行后,变量y的值为(  ) A.技术选考 B."技术选考" C."考选术技" D.考选术技 15.某Python程序实现的功能是;运行程序输入一个四位整数,能够判断该四位整数是否存在数字重复的位。程序代码如下: n = int(input(“请输入一个四位正整数:”)) f = [0] * 10 while n > 0:    y = n % 10 ①    n=n // 10 if ② :    print(“没有重复的位。”) else:    print(“有重复的位。”) 划线处的代码应填(   ) A.① f[y] = 1        ② sum(f) < 4        #sum()将列表中所有元素求和 B.① f[y] += 1        ② sum(f) < 4 C.① f[y] = 1        ② sum(f) == 4 D.① f[y] += 1        ② sum(f) == 4 16.有如下Python程序段: s1="abcdefgh"; s2="0213"; res="" j=0; m=0 for i in range(len(s1)):   k=m+int(s2[j])   res+=s1[k]   j+=1   if j==4: m=4 j=0 该程序段运行后,res的值为(    ) A."acbdacbd" B."acbdegfh" C."acbdefgh" D."abcdefgh" 17.执行如下程序段后,输出的结果是(    ) q=[6, 8, 9, 7, 4, 5, 2, 3] pre=10 head, tail=0, len(q) while head!=tail:      if  pre>q[head]:           pre=q[head]           print (q [head], end=’  ’)      head+=1 A.6  8  9 B.6  4  2 C.6  5  3 D.6 18.某Python程序如下: s="24SXqz" e="" for ch in s:     if ch>="0" and ch<="9":         c+=str(9-int(ch))     elif ch>="a" and ch<="z":         c+=chr((ord(ch) -ord("a")+3) %26+ord("a") )     else:         c=ch+c print(c) 程序运行后,输出的结果是(   ) A.XS24tc B.75SXtc C.XS75tc D.24SXtc 19.有如下Python程序段: s = 0 ; i = 1 while :     s = s + i     i = i + 2 该程序段运行后,变量s的值等于9,则程序划线处的语句不可能的是(   ) A.i < 5 B.i <= 5 C.i < 6 D.i <= 6 20.编写VB程序,计算斐波那契数列中第n项(n >= 3)的值,并在标签Label2中输出结果。(斐波那契数列是指这样的数列:1,1,2,3,5,8,13…。即:第1项和第2项的值均为1,从第3项开始,每一项的值是它前面两项之和),主要代码如下: n = Val(Text1.Text) f1 = 1: f2 = 1 For k = 3 To n     f = f1 + f2      ①      ② Next k Label2.Caption = "斐波那契数列第" + Str(n) + "项的值为" + Str(f) 代码中①②两处分别应为(  ) A.①f2 = f1  ②f1 = f B.①f1 = f2  ②f2 = f C.①f1 = f   ②f2 = f1 D.①f2 = f   ②f1 = f2 试卷第1页,共3页 试卷第1页,共3页 学科网(北京)股份有限公司 参考答案: 1.D 【详解】本题考查程序分析。程序运行过程: i=0,j=7,i<=j, m=3,不满足a[m]<key,则i=0, j=2, c=-1 i=0,j=2,i<=j, m=1,满足a[m]<key,则i=2, j=2, c=0 i=2,j=2,i<=j,m=2, 满足a[m]<key,则i=3, j=2, c=1 i=3, j=2,i<=j,不满足循环条件,退出循环,c=1,故选择D。 2.A 【详解】本题考查的是Python循环语句。阅读程序可知,将s1中字符与s2中字符逐个比较,如果s1中字符 比s2中字符大,将s1中字符拼接在字符串s后面,否则下个循环s1中下一字符与s2中下一字符比较,直到s1或s2所有字符比较完。 "p"="p"; "y"="y"; "t"="t"; "o">"h",将"o"字符拼接在字符串s后面,s="o" "r">"h",将"r"字符拼接在字符串s后面,s="or" "c"<"h"; "h"<"o"; 循环结束,故本题应选A。 3.D 【详解】本题主要考查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(0, 5) 等价于 range(0, 5, 1)。该程序用于计算0到100之间的偶数和,因此下划线处填101、2,故本题选D选项。 4.A 【详解】本题主要考查VB程序的执行。n=20201119,s=0,第一遍循环,x=20201119 mod 10=9,s=x+s=9,n=20201119\10=2020111;第二遍循环,x=2020111 mod 10=1,s=x+s=1+9=10,n=2020111\10=202011;第三遍循环,x=202011 mod 10=1,s=x+s=1+10=11,n=202011\10=20201;第四遍循环,x=20201 mod 10=1,s=x+s=1+11=12,n=20201\10=2020;第五遍循环,x= 2020 mod 10=0,s=x+s=0+12=12,n=2020\10=202;第六遍循环,x=202 mod 10=2,s=x+s=2+12=14,n=202\10=20;第七遍循环,x=20 mod 10=0,s=x+s=0+14=14,n=20\10=2;第八遍循环,x=2 mod 10=2,s=x+s=2+14=16,n=2\10=0,程序结束,故在文本框Text1中输入“20201119”,执行该程序段后,s的结果为16,故本题选A选项。 5.B 【详解】本题考查的是Python综合应用。由if语句可知,如果列表中的值能被3整除,则采用加法,否则采用减,故c=3-4-8+6+9=6。故选项B正确。 6.C 【详解】本题考查的知识点是Python循环语句。在Python中,可以使用break语句退出循环。continue语句用于跳过当前循环的剩余部分并进入下一次循环,故本题应选C。 7.B 【详解】本题主要考查Python程序循环结构。分析程序可知该程序实现1+2+3+...+10=55,故本题选B选项。 8.B 【详解】本题主要考查Python数据处理。分析程序可知,当像素点的颜色值pix[i,j]>=128时,填充“*”,反之无填充,图中灰色部分的像素点的颜色值均大于128,因此得到的效果图是 ,故本题选B选项。 9.C 【详解】本题主要考查Python循环结构。分析程序可知,该程序实现斐波那契数列各项的计算,即从第3项开始后一项是前2项的和,该数列为1、1、2、3、5、8等,变量i的范围0~2,即循环3次,循环后f2的值为5,故本题选C选项。 10.C 【详解】本题考查程序分析。程序随机生成1到4的随机数赋值给变量k,调用select函数删除特定的字母,调用connect函数输出。在connect函数中,累加给变量list1,输出list1。假设随机生成k=1时,执行函数select,结果为hllo。假设k=2时,同理结果为hllo-hlo。假设k=3时,结果为hllo-hlo-hl。假设k=4时,结果为hllo-hlo-hl-h。故选择C。 11.D 【详解】本题主要考查Python循环结构。分析程序可知,以下Python程序的基本结构是for循环结构,故本题选D选项。 12.B 【详解】本题主要考查Python程序的执行。分析程序可知,变量c用于统计列表a中前两项之和等于第三项的个数,a[0]+a[1]=a[2],a[1]+a[2]=a[3],故c的值为2,故本题选B选项。 13.A 【详解】本题主要考查VB程序设计的相关知识。VB中Rnd函数主要用于生成[0,1)之间的随机数,通过程序中a(i) = Int(Rnd * 10) * 2,可以判断数组中奇数位应该都为偶数,故B、C选项错误;通过随机数生成及后面的选择结构判断,数组元素不可能出现25,故D选项错误;A选项满足上述各条件,故A选项正确。 14.C 【详解】本题主要考查Python程序的执行。分析程序可知,该程序实现将字符串x中的字符,逆着保存到变量y中,x="技术选考",则程序段执行后,变量y的值为"考选术技",故本题选C选项。 15.C 【详解】本题主要考查Python程序的综合应用。用f[y]标记四位整数上y,该数不论出现几次,都赋值为1,即第一空填 f[y] = 1,如果sum(f)==4,说明没有重复的位,反之有重复的位,即第二空填sum(f) == 4,故本题选C选项。 16.B 【详解】本题主要考查Python程序的执行。分析程序,当j==4时,赋值m=4,j=0, 而k=m+int(s2[j]),res+=s1[k],即对s1字符串每4位一处理,而 s2="0213",即每4位中按照索引0、2、1、3的顺序从s1中截取字符,故该程序段运行后,res的值为"acbdegfh",故本题选B选项。 17.B 【详解】本题考查的是Python循环语句。该程序功能是,依次从列表q中从左到右取值跟pre中数值比较,如果比pre小,更新pre,并输出该值。10>6,更新pre=6,输出6;6>4,更新pre=4,输出4;4>2,更新pre=2,输出2。故输出的结果为:6 4 2,选项B正确。 18.C 【详解】本题考查程序分析。程序功能是遍历字符串每个字符,如果是数字字符,执行9减去该字符,转换成字符向后累计拼接到变量c。如果是小写字母字符,则按照26个字母周期向后移动3位,向后累计拼接到变量c。如果是大写字母字符,则向前累计拼接到变量c。故选项C为正确答案。 19.A 【详解】本题考查的是循环语句。由循环体可知s=1+3+5+……,要使变量s=9,则s=1+3+5,即i的值不超过6且要取到5,故循环条件为:i<=5或i<6或i <= 6,选项A正确。 20.B 【详解】本题主要考查VB程序的执行。f=f1+f2,接下来应该将f2的值赋给f1,将f的值赋给f2,故代码中①②两处分别应为①f1 = f2 ②f2 = f,故本题选B选项。 答案第1页,共2页 答案第1页,共2页 学科网(北京)股份有限公司 $$

资源预览图

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