资源简介 粤教版(2019) 必修1第四章 程序设计 综合复习训练一、选择题1.range(1,10)的取值范围是( )。A.1到10 B.1到9 C.0到10 D.0到92.统计字符串s中的升序段个数(例如47923123,则满足条件的升序段是479,23,123)。编写的部分VB程序段如下:s ="47923123"f=True:n=Len(s):m=0For i=2 To nIf Mid(s,i,1)>Mid(s,i-1,1)ThenElseEnd IfNext iText1. Text="升序段个数有"+Str(m)上述程序段中方框处可选语句为:①f = True②f = False③If f Then m=m+1则(1)(2)(3)处语句依次为( )A.①②③ B.②③① C.③②① D.③①②3.运行下列Python程序i=1s=1while ①:s=s*ii+=2print(s)当输出结果为105时,则①处应填入( )A.i<=7 B.i<7 C.i>=7 D.i>74.依据选择排序思想:设计一个对数组a进行剔除重复数据后升序排序的程序。实现该功能的VB程序段如下:i=1bottom=n 'n为a数组元素的个数Do While i<=bottom-1k=iFor j=bttom Toi+1 Step-1If a(j)k=jElseIf a(j)=a(k)ThenIf (1) Then (2) Else (3)bottom=bttom-1End IfNext jIf k <>I Then t=a(k): a(k)=a(i): a(i)=ti=i+1Loop上述程序中方框处可选语句为:①k=j②k=bottom③a(j)=a(bottom)则(1)、(2)、(3)处语句依次是( )A.②①③ B.②③① C.③①② D.①②③5.有以下 VB 程序段:a(1) = 58: a(2) = 38: a(3) = 46: a(4) = 40: a(5) = 58a(6) = 30: a(7) = 48: a(8) = 50: a(9) = 36: a(10) = 56For i = 1 To 10b(a(i) mod 10) = b(a(i) mod 10) + 1Next is=""For i = 0 To 9If b(i) > 0 Then s = s+ " " +str(i)+ ":" + Str(b(i))Next i数组 b 各元素初值为 0,执行该程序段,s 的值是( )A.3:4 4:3 5:4 B.8:4 6:3 0:3C.5:4 4:3 3:4 D.0:3 6:3 8:46.下列选项中,对变量a的赋值与其他三项不等价的是( )A.a= abs(a-b)B.if a>b Then=a- b Else a=b-aC.If a> bThen a=a-b If aD.a= a-b If a<0 Then a=-a7.若变量a、b的值分别是2、4,则a+b/a-b的值是( )A.-3 B.0 C.4 D.-18.某算法的部分流程图如图所示:若要用VB语言实现该部分算法,下列代码正确的是( )A. B. C. D.9.下面的程序段运行后的结果为( )s=0for i in range(1,6,2):s=s+iprint(s)A.15 B.10 C.12 D.910.有如下程序段:Function delStr(S As String, m As Integer) As StringDim n As Integer : n = Len(S)If m < 1 Or m > n Then delStr = "输入位置有误!"If m = 1 Then delStr = Mid(S, 2, n - 1)If m < n Then delStr = Mid(S, 1, m - 1) + Mid(S, m + 1, n - m)If m = n Then delStr = Mid(S, 1, n - 1)End FunctionPrivate Sub Command1_Click()Dim S As String : Dim i As IntegerS = Text1.TextFor i = 1 To 10 Step 2S = delStr(S, i)Next iText2.Text = SEnd Sub文本框 Text1 中输入 Happybirthday,执行该程序段,文本框 Text2 中显示的是( )A.apybrtda B.apbrhday C.Happybirhday D.day11.在Python中,以下程序运行后的结果是( )(1)import turtle as mypen(2)for x in range(40,0,-10):(3) mypen.circle(x)(4) mypen.done()A. B. C. D.12.有如下VB程序段:Dim d(1 to 5)as integer,i as integerDim flag as Boolean,j as integer‘给数组元素d(1)至d(5)赋初值为1,代码略RandomizeFor i=1 to 5J = l:flag = Trued(i) = int(Rnd*9)Do while j< =i-1 and flag = Trued(i) = int(Rnd*5+1)If d(i) = d(j) then i=i-l:flag = Falsej = j+1LoopNext i运行程序后,数组中的数据值可能是( )A.1 3 4 5 6 B.3 5 4 1 1 C.8 3 1 2 5 D.1 2 6 2 1二、填空题13.阅读程序。分析代码并回答问题。list=['a','b','c','d','e','f','g']list1=[]list2=[]for i in range(7):if i%2==0:list1.append(list[i])else:list2.append(list[i])print(list1)print(list1)(1)list 的数据类型是 _______。(2)list中的元素的数据类型 ________。(3)list1=[]的作用是 _______。(4)for i in range(7)语句中,i 的实际数据范围是从_____到 ____。(5)append(list[i])的作用是______。14.numpy是一个科学计算包,其中包括很多________,如________、矩阵计算方法、________、线性代数等。15.根据以下程序代码完成下列小题。程序描述: 所谓角谷猜想,是指对于任意一个正整数,如果是奇数,则乘3加1,如果是偶数,则除以2,得到的结果再按照上述规则重复处理,最终总能够得到1。如,假定初始整数为5,计算过程分别为16、8、4、2、1。程序要求输入一个正整数(不为1),将经过处理得到1的过程输出来。代码如下:x=int(input('输入一个正整数:'))while ①if ②x=x/2③el se:④③if x==1:⑤①处的语句是(_______), ②处的语句是(______),③处的语句是(_____),④处的语句是(______),⑤处的语句是(_____)。(1)A.x>1 B.x>2 C.x!=1: D.x!=0:(2)A.x%3=0: B.x%2=0: C.x%3==0: D.x%2==0:(3)A.print(‘x/2’) B.print(‘x’) C.print(x) D.print(x/2)(4)A.x= x/2 B.x= x/2+1 C.x=x*3+1 D.x=3x+1(5)A.pass B.exit C. continue D.break16.用Python语言实现加密算法时,明文和密文都被抽象为_________类型的数据。三、判断题17.若n=6,m=3,则表达式m+3==n and n-3>=m的值为true。(______)18.常见的顺序结构语句有输入语句、输出语句和赋值语句。(______)19.在 Python语言环境下,表达式13%2+7//2的值为4.5。 (_____)20.python语言是一种面向对象的解释型计算机程序设计语言,发明于1989年。目前,python已经成为最受欢迎的程序设计语言之一。 (_____)【参考答案】一、选择题1.B2.C3.A4.A5.D6.C7.B8.B9.D10.A11.D12.C二、填空题13.列表 字符型 定义一个空的列表 0 6 可以向list中添加元素14.数学函数 矢量运算 三角函数15.C D C C D16.字符串三、判断题17.正确18.正确19.错误20.对 展开更多...... 收起↑ 资源预览