资源简介 浙江省台州市黄岩第二高级中学2019-2020学年高二下学期信息技术返校考试试卷一、选择题(本大题共12小题,每小题2分,共24分。每小题列出四个备选项中只有一个符合题目要求的,不选,多选错选均不得分)1.(2020高二下·台州开学考)在VisualBasic中,能表示整数x是完全平方数(如=3*3,9是完全平方数)的表达式是( )A.x^2=x*x B.sqr(x)=x\2C.int(sqr(x))^2=x D.(x\2)^2=x32.(2020高二下·台州开学考)下列程序执行后文本框Text1显示的内容是( )x= "abcdcba": ans = 0For i= 1 To Len(x) \2.If Mid(x, i, 1) = Mid(x, Len(x)-i+ 1, 1) Then ans = ans+ 1Next iText1.Text = Str(ans)A.1 B.2 C.3 D.43.(2020高二下·台州开学考)有如下程序:Private Sub Command1_Click()Dim a(5) as IntegerDim n as Integer, i as Integern=Val(Text1.Text)i=0a(1)=1: a(2)=1For i=3 To na(i)=a(i-1)+a(i-2)Next iLabel1.Caption=a(i)End Sub若在Text1中输入5,则点击按钮后的运行结果为( )A.Label11中输出5 B.Label1中输出10C.报“下标越界”错误 D.Label11中无内容4.(2020高二下·台州开学考)有如下VB程序段:Fori=1 To 3For j=6 To i+1 Step-1If a(j) > a(j-1) Thenk=a(j): a(j)=a(j-1): a(j-1)=kEnd IfNext js=s+“"”+str(a(i))Next iText1. Text=str(s)数组元素从a(1)到a(6)的数据依次为“3、7、25、8、9”,经过该程序“加工”后,文本框Text1中显示的是( )A.2 3 5 B.9 8 7 C.3 7 2 D.7 3 25.(2020高二下·台州开学考)某算法的部分流程图如下图所示,执行这部分流程后,输出c,s的值分别是( )A.8,10 B.10,14 C.12,6 D.12,246.(2020高二下·台州开学考)有如下VisualBasic自定义函数:Function f(x As Integer) As Singlef=Abs(x)End Function该函数返回值的数据类型是( )A.整数型 B.日期型C.逻辑型 D.单精度实数型7.(2020高二下·台州开学考)下列VB表达式中,不是字符串的是( )A.Chr((Rnd*26)+65) B.Len("中国2019")C.Mid("r12b",2,2) D.(n+1) Mod 5&68.有VB编写的程序如下:Dim a(0 To 9) As Integer, t as Longt=Val(Text1.Text)Do While t<>0a(t Mod 10) = 1t = t \ 10LoopFor i = 0 To 9x = x + a(i)Next iText1中输入10242048,则程序执行后x的值为( )A.1 B.2 C.5 D.109.(2020高二下·台州开学考)下列程序执行后文本框Text1显示的内容是( )Dimx As String, y As String, ans As Integerx="12": y="100"if x> Then ans=Val(x) Else ans=val(y)Text1.Text Str(ans)A.12200 B.12112 C.124 D.2121010.(2020高二下·台州开学考)某排序算法的VB程序段如下:For i=1 To 4k=iFor j=5 To i+1 Step-1If a(j)Next jIf k<> i Thentmp=a(k) : a(k)=a(i) : a(i)=tmpf(i)=TrueEnd IfNext i当数组元素a(1)到a(5)的值依次为“8,2,1,21,3”数组f的初值均为 False,执行该程序段,f数组中元素值为True的个数有( )A.1个 B.2个 C.3个 D.4个11.有一段VB程序,代码如下:For i=1 To 3For j=8 To i+1 Step-1If a(j) < a(i) Thent=a(j): a(j)=a(i): a(i)=tEnd IfNext jNext i数组元素a(1)到a(8)的值依次为“35, 18, 14, 20, 30, 15, 28, 26”,运行该程序段后,a(5)到a(8)的值依次是( )A.30,26,28,35 B.14,15,18,20 C.26,15,18,14 D.26,28,30,3512.(2020高二下·台州开学考)某对分查找算法的VB程序段如下:t="": i=0: j=9: key=62: f=FalseDo While i <=j And Not fm=Fix((i+j)/2)t=t+Str(m)If a(m)= key Thenf=TrueElseIf a(m)>key Theni=m+1t=t+"→"Elsej=m-1t=t+"←"End IfLoop数组元素a(0)到a(9)的值依次为“99,94,90,87,78,70,63,56,45,36”执行该程序段的值是( )A."4→7←5→" B."4→7←5→6→"C."4→7←5→6" D."4→7←-5"二、非选择(本大题共3小题,4+11+11)13.(2020高二下·台州开学考)编写VB程序实现如下功能程序运行时产生n个数据并按升序排序显示在列表框List1中,在文本框Text1中输入一个正整数key,单击“查找”按钮 Command1,则在标签Label2中显示查找结果。程序界面如图所示。实现上述功能的VB程序如下,但加框处代码有错误,请改正。Const n=10Dim d(1 To n)As IntegerPrivate Sub Form Load()′随机产生n整数并存储在数组d中,并把数组d按升序排序′在列表框中显示排序后的数据,代码略End SubPrivate Sub Command1_Click()Dim key As Integer, p As Integerkey =Val(Text1.Text)‘①If p<>0 ThenLabel2. Caption="该数据在第"+Str(p)+"个位置"ElseLabel2. Caption="没有找到! "End IfEnd SubFunction search(key As Integer) As Integeri=1: j=nDo While i<= jm=(i+j)\2If d(m)=key Thensearch =mExit FunctionElseIf keyj=m-1Elsei=m+1End IfLoop‘②End Function14.(2020高二下·台州开学考)逆序数在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序。一个排列中逆序的总数就称为这个排列的逆序数。逆序数为偶数的排列称为偶排列;逆序数为奇数的排列称为奇排列。例如序列2431,逆序依次为(2,1),(4,3),(4,1),(3,1),因此该序列的逆序数为4,为偶排列。编写VB程序,功能如下:程序运行时,在文本框Text1中输入序列,单击“计算”按钮Command11,在文本框Text2中输出逆序数,并在 Label3中输出判断结果(偶排列或者奇排列)。程序运行界面如图所示。(1)如果序列为“5872469”,则逆序数为 。(2)实现上述功能的VB程序如下,完善填空。Function NiXuShu(s As String) As Integer '逆序数计算Dim i As Integer, j As Integer, c As Integer , n(1 To 100) As Integerc=0For i= 1 To Len(s)n(i) =Val(Mid(s, i, 1))For j=1 To i- 1if Thenc=c+ 1End IfNext jNext i End FunctionPrivate Sub Command1_ Click()Dim x As String, y As Integerx = Text1.Text Text2.Text = Str(y)If y Mod 2= 0 Then Label3.Caption = "偶排列" Else Label3.Caption = "奇排列"End Sub15.(2020高二下·台州开学考)编写“二进制加法”程序。程序运行时,在文本框Text1和文本框Text2分别输入两个二进制数,单击按钮 Command11后在文本框Text3上输出两个二进制相加后的结果。程序运行如图所示。(1)观察代码触发代码执行的事件名是 。(2)为实现上述功能,请在划线处填入合适的代码。Private Sub Command1_Click()Dim b1 As String, b2 As String, ans As String, t As StringDim dist As Integer, jw As Integerb1=Text1.Text: b2 Text2.Text: ans="" If dist <0 Thent=b1: b1=b2: b2=t: dist=-distEnd IfFor i=1 To distb2="0"+b2Next ijw=0For i= Len(b1)To 1 Step-1x= Val(Mid(b1, i, 1))+ Val(Mid(b2, i, 1))+jw ans Str(x Mod 2)+ansNext iIf Then ans ="1"+ ansText3.Text=ansEnd Sub答案解析部分1.【答案】C【知识点】运算符、基本运算与表达式2.【答案】C【知识点】运算符、基本运算与表达式;常量、变量及变量的赋值3.【答案】C【知识点】程序的调试及运行;常量、变量及变量的赋值4.【答案】B【知识点】常见数据类型、数组;分支结构语句及程序实现;循环结构语句及程序实现5.【答案】B【知识点】常量、变量及变量的赋值;流程图识读6.【答案】D【知识点】常见数据类型、数组;过程与自定义函数7.【答案】B【知识点】运算符、基本运算与表达式8.【答案】C【知识点】常见数据类型、数组;常量、变量及变量的赋值【解析】【解答】本题先执行一个Do While循环,然后执行一个For循环,Do While循环的作用是把t从个位开始逐个取出来,作为数组a的位置,并且令这个位置的值为1,例如个位数是8,则a(8)=1,这里注意到如果这个位置出现多次,那么数组a中这个位置的值还是1,例如2出现了两次,那么a(2)=1被执行了两次。For循环就是把数组a中的值加起来存储到x,由于数组a中只有0,1,2,4,8这几个位置的值是1,所以x=5。故答案选C。【分析】本题考查的是VB中循环语句的执行及数组与表达式的计算。9.【答案】B【知识点】程序的调试及运行;常量、变量及变量的赋值10.【答案】C【知识点】常量、变量及变量的赋值;排序算法及程序实现11.【答案】A【知识点】排序算法及程序实现【解析】【解答】程序进行了三趟排序。第 i 趟排序,即从后往前逐个与 a(i)进行比较,如果比 a(i)小,数据交换。经过第一趟排序后数组 a 中的元素值依次为:14,18,15,20,30,26,28,35;第二趟排序后数组 a 中的元素值依次为:14,15,18,20,30,26,28,35;第三趟排序数据不变。所以a(5)到a(8)的值依次是30,26,28,35 。故答案选A。【分析】本题考查冒泡排序的程序实现。冒泡排序算法的运作过程为:从后往前比较相邻的元素,如果前一个比后一个大,就交换它们两个的位置。对每一个相邻元素作同样的工作,直至从结尾的最后一个到开始的第一个,此时最小的元素排在第一个,针对所有的元素重复以上的步骤,除了最后一个,持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。12.【答案】B【知识点】常量、变量及变量的赋值;查找算法及程序实现13.【答案】①p=search(key) ②search=0【知识点】常量、变量及变量的赋值;过程与自定义函数;排序算法及程序实现14.【答案】(1)9(2)n(j)>n(i);nixushu=c;y=nixushu(x)【知识点】常量、变量及变量的赋值;过程与自定义函数15.【答案】(1)Click(2)dist=len(b1)-len(b2);jw=x\2;jw=1【知识点】类、对象、属性、方法、事件和事件处理的概念及应用;运算符、基本运算与表达式;常量、变量及变量的赋值1 / 1浙江省台州市黄岩第二高级中学2019-2020学年高二下学期信息技术返校考试试卷一、选择题(本大题共12小题,每小题2分,共24分。每小题列出四个备选项中只有一个符合题目要求的,不选,多选错选均不得分)1.(2020高二下·台州开学考)在VisualBasic中,能表示整数x是完全平方数(如=3*3,9是完全平方数)的表达式是( )A.x^2=x*x B.sqr(x)=x\2C.int(sqr(x))^2=x D.(x\2)^2=x3【答案】C【知识点】运算符、基本运算与表达式2.(2020高二下·台州开学考)下列程序执行后文本框Text1显示的内容是( )x= "abcdcba": ans = 0For i= 1 To Len(x) \2.If Mid(x, i, 1) = Mid(x, Len(x)-i+ 1, 1) Then ans = ans+ 1Next iText1.Text = Str(ans)A.1 B.2 C.3 D.4【答案】C【知识点】运算符、基本运算与表达式;常量、变量及变量的赋值3.(2020高二下·台州开学考)有如下程序:Private Sub Command1_Click()Dim a(5) as IntegerDim n as Integer, i as Integern=Val(Text1.Text)i=0a(1)=1: a(2)=1For i=3 To na(i)=a(i-1)+a(i-2)Next iLabel1.Caption=a(i)End Sub若在Text1中输入5,则点击按钮后的运行结果为( )A.Label11中输出5 B.Label1中输出10C.报“下标越界”错误 D.Label11中无内容【答案】C【知识点】程序的调试及运行;常量、变量及变量的赋值4.(2020高二下·台州开学考)有如下VB程序段:Fori=1 To 3For j=6 To i+1 Step-1If a(j) > a(j-1) Thenk=a(j): a(j)=a(j-1): a(j-1)=kEnd IfNext js=s+“"”+str(a(i))Next iText1. Text=str(s)数组元素从a(1)到a(6)的数据依次为“3、7、25、8、9”,经过该程序“加工”后,文本框Text1中显示的是( )A.2 3 5 B.9 8 7 C.3 7 2 D.7 3 2【答案】B【知识点】常见数据类型、数组;分支结构语句及程序实现;循环结构语句及程序实现5.(2020高二下·台州开学考)某算法的部分流程图如下图所示,执行这部分流程后,输出c,s的值分别是( )A.8,10 B.10,14 C.12,6 D.12,24【答案】B【知识点】常量、变量及变量的赋值;流程图识读6.(2020高二下·台州开学考)有如下VisualBasic自定义函数:Function f(x As Integer) As Singlef=Abs(x)End Function该函数返回值的数据类型是( )A.整数型 B.日期型C.逻辑型 D.单精度实数型【答案】D【知识点】常见数据类型、数组;过程与自定义函数7.(2020高二下·台州开学考)下列VB表达式中,不是字符串的是( )A.Chr((Rnd*26)+65) B.Len("中国2019")C.Mid("r12b",2,2) D.(n+1) Mod 5&6【答案】B【知识点】运算符、基本运算与表达式8.有VB编写的程序如下:Dim a(0 To 9) As Integer, t as Longt=Val(Text1.Text)Do While t<>0a(t Mod 10) = 1t = t \ 10LoopFor i = 0 To 9x = x + a(i)Next iText1中输入10242048,则程序执行后x的值为( )A.1 B.2 C.5 D.10【答案】C【知识点】常见数据类型、数组;常量、变量及变量的赋值【解析】【解答】本题先执行一个Do While循环,然后执行一个For循环,Do While循环的作用是把t从个位开始逐个取出来,作为数组a的位置,并且令这个位置的值为1,例如个位数是8,则a(8)=1,这里注意到如果这个位置出现多次,那么数组a中这个位置的值还是1,例如2出现了两次,那么a(2)=1被执行了两次。For循环就是把数组a中的值加起来存储到x,由于数组a中只有0,1,2,4,8这几个位置的值是1,所以x=5。故答案选C。【分析】本题考查的是VB中循环语句的执行及数组与表达式的计算。9.(2020高二下·台州开学考)下列程序执行后文本框Text1显示的内容是( )Dimx As String, y As String, ans As Integerx="12": y="100"if x> Then ans=Val(x) Else ans=val(y)Text1.Text Str(ans)A.12200 B.12112 C.124 D.21210【答案】B【知识点】程序的调试及运行;常量、变量及变量的赋值10.(2020高二下·台州开学考)某排序算法的VB程序段如下:For i=1 To 4k=iFor j=5 To i+1 Step-1If a(j)Next jIf k<> i Thentmp=a(k) : a(k)=a(i) : a(i)=tmpf(i)=TrueEnd IfNext i当数组元素a(1)到a(5)的值依次为“8,2,1,21,3”数组f的初值均为 False,执行该程序段,f数组中元素值为True的个数有( )A.1个 B.2个 C.3个 D.4个【答案】C【知识点】常量、变量及变量的赋值;排序算法及程序实现11.有一段VB程序,代码如下:For i=1 To 3For j=8 To i+1 Step-1If a(j) < a(i) Thent=a(j): a(j)=a(i): a(i)=tEnd IfNext jNext i数组元素a(1)到a(8)的值依次为“35, 18, 14, 20, 30, 15, 28, 26”,运行该程序段后,a(5)到a(8)的值依次是( )A.30,26,28,35 B.14,15,18,20 C.26,15,18,14 D.26,28,30,35【答案】A【知识点】排序算法及程序实现【解析】【解答】程序进行了三趟排序。第 i 趟排序,即从后往前逐个与 a(i)进行比较,如果比 a(i)小,数据交换。经过第一趟排序后数组 a 中的元素值依次为:14,18,15,20,30,26,28,35;第二趟排序后数组 a 中的元素值依次为:14,15,18,20,30,26,28,35;第三趟排序数据不变。所以a(5)到a(8)的值依次是30,26,28,35 。故答案选A。【分析】本题考查冒泡排序的程序实现。冒泡排序算法的运作过程为:从后往前比较相邻的元素,如果前一个比后一个大,就交换它们两个的位置。对每一个相邻元素作同样的工作,直至从结尾的最后一个到开始的第一个,此时最小的元素排在第一个,针对所有的元素重复以上的步骤,除了最后一个,持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。12.(2020高二下·台州开学考)某对分查找算法的VB程序段如下:t="": i=0: j=9: key=62: f=FalseDo While i <=j And Not fm=Fix((i+j)/2)t=t+Str(m)If a(m)= key Thenf=TrueElseIf a(m)>key Theni=m+1t=t+"→"Elsej=m-1t=t+"←"End IfLoop数组元素a(0)到a(9)的值依次为“99,94,90,87,78,70,63,56,45,36”执行该程序段的值是( )A."4→7←5→" B."4→7←5→6→"C."4→7←5→6" D."4→7←-5"【答案】B【知识点】常量、变量及变量的赋值;查找算法及程序实现二、非选择(本大题共3小题,4+11+11)13.(2020高二下·台州开学考)编写VB程序实现如下功能程序运行时产生n个数据并按升序排序显示在列表框List1中,在文本框Text1中输入一个正整数key,单击“查找”按钮 Command1,则在标签Label2中显示查找结果。程序界面如图所示。实现上述功能的VB程序如下,但加框处代码有错误,请改正。Const n=10Dim d(1 To n)As IntegerPrivate Sub Form Load()′随机产生n整数并存储在数组d中,并把数组d按升序排序′在列表框中显示排序后的数据,代码略End SubPrivate Sub Command1_Click()Dim key As Integer, p As Integerkey =Val(Text1.Text)‘①If p<>0 ThenLabel2. Caption="该数据在第"+Str(p)+"个位置"ElseLabel2. Caption="没有找到! "End IfEnd SubFunction search(key As Integer) As Integeri=1: j=nDo While i<= jm=(i+j)\2If d(m)=key Thensearch =mExit FunctionElseIf keyj=m-1Elsei=m+1End IfLoop‘②End Function【答案】①p=search(key) ②search=0【知识点】常量、变量及变量的赋值;过程与自定义函数;排序算法及程序实现14.(2020高二下·台州开学考)逆序数在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序。一个排列中逆序的总数就称为这个排列的逆序数。逆序数为偶数的排列称为偶排列;逆序数为奇数的排列称为奇排列。例如序列2431,逆序依次为(2,1),(4,3),(4,1),(3,1),因此该序列的逆序数为4,为偶排列。编写VB程序,功能如下:程序运行时,在文本框Text1中输入序列,单击“计算”按钮Command11,在文本框Text2中输出逆序数,并在 Label3中输出判断结果(偶排列或者奇排列)。程序运行界面如图所示。(1)如果序列为“5872469”,则逆序数为 。(2)实现上述功能的VB程序如下,完善填空。Function NiXuShu(s As String) As Integer '逆序数计算Dim i As Integer, j As Integer, c As Integer , n(1 To 100) As Integerc=0For i= 1 To Len(s)n(i) =Val(Mid(s, i, 1))For j=1 To i- 1if Thenc=c+ 1End IfNext jNext i End FunctionPrivate Sub Command1_ Click()Dim x As String, y As Integerx = Text1.Text Text2.Text = Str(y)If y Mod 2= 0 Then Label3.Caption = "偶排列" Else Label3.Caption = "奇排列"End Sub【答案】(1)9(2)n(j)>n(i);nixushu=c;y=nixushu(x)【知识点】常量、变量及变量的赋值;过程与自定义函数15.(2020高二下·台州开学考)编写“二进制加法”程序。程序运行时,在文本框Text1和文本框Text2分别输入两个二进制数,单击按钮 Command11后在文本框Text3上输出两个二进制相加后的结果。程序运行如图所示。(1)观察代码触发代码执行的事件名是 。(2)为实现上述功能,请在划线处填入合适的代码。Private Sub Command1_Click()Dim b1 As String, b2 As String, ans As String, t As StringDim dist As Integer, jw As Integerb1=Text1.Text: b2 Text2.Text: ans="" If dist <0 Thent=b1: b1=b2: b2=t: dist=-distEnd IfFor i=1 To distb2="0"+b2Next ijw=0For i= Len(b1)To 1 Step-1x= Val(Mid(b1, i, 1))+ Val(Mid(b2, i, 1))+jw ans Str(x Mod 2)+ansNext iIf Then ans ="1"+ ansText3.Text=ansEnd Sub【答案】(1)Click(2)dist=len(b1)-len(b2);jw=x\2;jw=1【知识点】类、对象、属性、方法、事件和事件处理的概念及应用;运算符、基本运算与表达式;常量、变量及变量的赋值1 / 1 展开更多...... 收起↑ 资源列表 浙江省台州市黄岩第二高级中学2019-2020学年高二下学期信息技术返校考试试卷(学生版).docx 浙江省台州市黄岩第二高级中学2019-2020学年高二下学期信息技术返校考试试卷(教师版).docx