项目九 数组《Visual Basic程序设计》(电工版第六版)章节过关卷

2026-01-14
| 2份
| 19页
| 41人阅读
| 2人下载

资源信息

学段 中职
学科 职教专业课
课程 程序设计基础
教材版本 -
年级 -
章节 -
类型 作业-单元卷
知识点 数组和记录
使用场景 同步教学-单元练习
学年 2026-2027
地区(省份) 内蒙古自治区
地区(市) -
地区(区县) -
文件格式 ZIP
文件大小 260 KB
发布时间 2026-01-14
更新时间 2026-01-14
作者 xkw_078433669
品牌系列 学易金卷·阶段检测模拟卷
审核时间 2026-01-14
下载链接 https://m.zxxk.com/soft/55943432.html
价格 3.00储值(1储值=1元)
来源 学科网

内容正文:

《Visual Basic程序设计(第6版)》电子工业出版社 项目九 数组 考试时间:90分钟 满分:100分 姓名 班级 学号 1、 单项选择题(本题共20小题,每题3分,共60分) 1. 关于Array函数的使用,正确的是()。 A. Array函数可创建多维数组 B. Dim arr: arr = Array(1, "abc", True) 是合法的 C. Array函数创建的数组下界由Option Base决定 D. Dim arr(5) As Integer: arr = Array(1,2,3) 是合法的 【答案】B 【解析】Array 只能返回一维 Variant 数组。Array 返回 Variant,元素可混用不同类型。Array 永远返回下标 0 起始的数组,不受 Option Base 影响。 2. 在 VB 中,以下关于数组初始化的说法错误的是( ) A. 可以在声明数组时直接初始化元素值 B. 数值型数组未初始化时元素值默认为 0 C. 字符串数组未初始化时元素值默认为空字符串 D. 数组初始化后不能再修改元素值 【答案】D 【解析】 初始化后仍可通过索引任意修改元素。 3. 关于 VB 二维数组的内存存储方式,下列说法正确的是( ) A. 按列存储,先存第一列所有元素,再存第二列 B. 按行存储,先存第一行所有元素,再存第二行 C. 按对角线顺序存储,先存主对角线元素,再存其他元素 D. 随机存储,无固定顺序 【答案】B 【解析】VB 中二维数组的元素在内存中按行优先存储,即先存储第一行的所有元素,再依次存储第二行、第三行的元素。 4. 对动态数组使用Erase语句的作用是( ) A. 将元素值置为 0 B. 扩展数组大小 C. 释放存储空间 D. 保留数据并重置维度 【答案】C 【解析】Erase对动态数组释放内存,对静态数组重置元素值。 5. 下列有关控件数组与一般控件的区别的叙述中,最合理的是( ) A.控件数组一定由多个同类型的控件组成,一般控件只有一个控件 B.控件数组的Index为0,一般控件的Index为空 C.控件数组的Index为1,一般控件的Index为0 D.控件数组的建立通过Dim语句声明,一般控件不必声明 【答案】A 【解析】控件数组要求同名、同类型,并通过 Index 属性(0 起始)区分各个成员;一般控件无 Index。 6、下列说法中正确的是( )。 A. 控件数组中所包含的各控件的Index属性值可以相同 B. Erase语句的作用是释放静态数组中各元素所占的内存空间 C. 控件数组中所包含的各控件的Name属性值不能相同 D. 数组下标的下界可以是负数 【答案】D 【解析】控件数组的每个元素都有一个与之关联的下标,或称索引(Index),下标值由Index属性指定,故每个元素的Index属性值不同。Erase语句用来重新初始化静态数组的元素,或者释放动态数组的存储空间;数组中的每个控件的Name属性必须相同;在数组定义中下标下界可以是负值。 7、假定建立了一个名为Command1的命令按钮数组,则以下说法中错误的是( ) 。 A.数组中每个命令按钮的名称,如Name属性均为Command1 B.数组中每个命令按钮的大小都一样 C.数组中所有命令按钮可以使用同一个事件过程 D.在代码中访问任意一个命令按钮只需使用名称Command1 【答案】D 【解析】访问按钮数组中的单个按钮不能仅用名称 Command1,需通过索引区分具体按钮。 8、下面数组声明语句,( )正确。 A. Dim a[2,4] As Integer B. Dim a(2,4)As Integer C. Dim a(n,n)As Integer D. Dim a(2 4)As Integer 【答案】B 【解析】VB 中声明数组时,必须使用圆括号()包裹下标,方括号[]仅用于数组元素的引用,多维时,维数之间用逗号分隔。 9、数组Dim D(3,1 To 10,1 To 15)有( )元素 A.100 B.600 C. 30 D. 450 【答案】B 【解析】若未指定下限,则第一维从 0 开始,4×10×15=600。 10、一个数组说明为Dim a(0 to 5,1 to 5) As Integer,则该数组共有( )个元素。 A.25 B.36 C.30 D.不确定 【答案】C 【解析】第一维:0 To 5 → 6 个元素,第二维:1 To 5 → 5 个元素。 11、以下数组定义语句中,错误的是( )。 A. Static a(10)As Integer B. Dim c(3, 1 To 4) C. Dim d(-10) D. Dim b(0 To 5, 1 To 3)As Integer 【答案】C 【解析】VB 数组声明时,仅写单个数值表示 “上界”,默认下界为 0,若需负数下标,必须用To显式指定下界和上界。 12、执行Dim arr() As Integer: ReDim arr(2,3): ReDim Preserve arr(2,5)后,数组的行数和列数分别为() A. 3 行 6 列 B. 2 行 5 列 C. 3 行 5 列 D. 2 行 6 列 【答案】A 【解析】Option Base 0时,arr(2,5)行下标 0~2(3 行),列下标 0~5(6 列);ReDim Preserve仅扩展了列数。 13、一个二维数组可以存放 1 个矩阵。在程序开始有语句 Option Base 0,则下面定义的数组中正好可以存放 1 个4x3 矩阵,即只有 12 个元素的是( )。 A. Dim a(-2 To 0,2)As Integer B. Dim a(3,2)As Integer C. Dim a(4,3)As Integer D. Dim a(-1 To -4,-1 To -3)As Integer 【答案】B 【解析】Option Base 0 下,若上下界直接给数值,则下界默认为 0。第一维 0‒3 → 4 个元素;第二维 0‒2 → 3 个元素;总元素数 4×3=12,正好存放一个 4×3 矩阵。 14、在窗体上画三个单选按钮,组成一个名ChkOption的控件数组。用于标识各个控件数组元素的参数是( )。 A. Tag B. Index C. ListIndex D. Name 【答案】B 【解析】Index 属性是控件数组的核心标识符,每个数组元素通过唯一的 Index 值区分。 15、下列语句中的( )语句可以用来正确声明一个动态数组。 A. Private A(n) As Integer B. Dim A() As Integer C. Dim A(,) As Integer D. Dim A(1 to n) 【答案】B 【解析】声明时留空圆括号,表示动态数组,随后可用 ReDim 再次分配大小。 16、若有数组声明语句Dim t(1 To 10) As Variant,则t被定义为( )。 A.数值数组 B.可调数组 C.字符串数组 D.可变类型数组 【答案】D 【解析】As Variant:指定数组的元素类型为 Variant(可变类型 / 变体类型)。 17、编写如下程序代码: Option Base 1 Private Sub Form_Click() Dim x, t Dim i As Integer Dim n As Integer x = Array(-8, 20, 15, 10, -30, 13, 17) n = UBound(x) For i = 1 To n / 2 t = x(i) x(i) = x(n - i + 1) x(n - i + 1) = t Next i Print x(n) End Sub 当程序运行时,单击窗体产生的输出结果为( )。 A. 20 B. 17 C. 10 D. -8 【答案】D 【解析】在程序开始之前,使用Option Base 1语句声明数组下标从1开始。For循环体语句的功能是对数组首尾两个数进行互换,循环结束后数组中的元素依次为(17,13,-30,10,15,20,-8),故最后输出x(n)的值为数组最后一个元素的值。 18、如有以下程序代码: Private Sub Command1_Click() Dim arr1(10), arr2(10) As Integer n = 3 For i = 1 To 5 arr1(i) = i arr2(n) = 2 * n + i Next i Print arr2(n); arr1(n) End Sub 运行程序后,在窗体上输出的内容为( ) A. 11 3 B. 3 11 C. 13 3 D. 3 13 【答案】A 【解析】arr1(i) = i:直接赋值,arr1(1)=1,arr1(2)=2,...,arr1(5)=5。arr2(n) = 2 * n + i:每次循环更新 arr2(3) 的值。 19、如有以下程序代码: Option Base 0 Private Sub Command1_Click() Static city As Variant city = Array("北京", "上海", "天津", "重庆") Print city(1) End Sub 运行程序后,在窗体上输出的内容为( ) A.空白 B.错误提示 C.北京 D.上海 【答案】D 【解析】Option Base 0 指定数组索引从 0 开始。 20、编写如下程序代码: Option Base 1 Private Sub Form_Click() Dim a a=Array(19,17,15,13,11,9,7,5,3,11) For i=1 To 10 If a(i)/3=a(i)\3 Or a(i)/5=a(i)\5 Then Sum=Sum+a(i) End If Next i Print "Sum="; Sum End Sub 运行时输出Sum的值是( )。 A.27 B.15 C.32 D.20 【答案】C 【解析】循环遍历数组,累加满足以下条件的元素到 Sum:能被 3 整除或能被 5 整除。 2、 填空题(本题共10小题,每题2分,共20分) 1. 在VB中,用________语句设定数组的下界,用_______和________语句分别返回数组的上、下界。 【答案】option base、ubound、lbound 【解析】 返回数组上下界:上界:UBound(数组名[, 维度]);下界:LBound(数组名[, 维度])。 2、VB中,用Option Base 1说明后,Dim A(5,5)定义的数组有__________个元素。 【答案】25 【解析】 Option Base 1:指定 VB 数组的默认下界为 1。 3、 在使用动态数组时,如要改变数组的大小而又不丢失数组中的数据,应使用具有________关键字的ReDim语句。 【答案】Preserve 【解析】Preserve 是 VB 中ReDim语句的核心修饰关键字,作用是调整动态数组大小时保留原有数据;若不加该关键字,调整数组大小后原有数据会被清空。 4、 数组的下标下界是根据语句___________来决定。 【答案】 Option Base 【解析】Option Base 是 VB 中专门用于指定数组默认下标下界的语句,它直接决定了未显式指定下界的数组的起始下标。 5、 VB有两种类型的数组:固定大小的___________ 和在程序运行时可以改变的_______。 【答案】静态数组 ;动态数组 【解析】静态数组的定义:声明时明确指定数组大小,程序运行过程中无法改变长度的数组。动态数组声明时不指定下标范围,程序运行时可通过ReDim语句灵活调整大小的数组,适合元素个数不确定的场景。 6、在VB中,静态数组声明中的下标只能是_______。而动态数组Redim语句中的下标还可以是_______的变量。 【答案】常量; 已赋值 【解析】VB 中静态数组(固定大小数组)声明时,下标必须是不能改变的常数;动态数组通过ReDim调整大小时,下标可以是有确定值的变量。 7、控件数组由一组相同类型的控件组成,这些控件共用一个相同的控件名,但是每个控件都有一个唯一的下标来区分,我们使用属性____来设置下标。 【答案】Index 【解析】Index 是 VB 中控件数组的核心属性,用于为控件数组中的每个成员分配唯一的下标值(从 0 开始,也可通过Option Base 1改为从 1 开始),是区分同一控件数组中不同控件的唯一标识。 8、若要给控件数组Label1(Index)的第 3 个元素设置标题为 “提示”,语句为:________ = "提示"。 【答案】Label1(2).Caption 【解析】控件数组索引从 0 开始,第 3 个元素对应Index=2,Caption是标签的标题属性。 9、VB 中静态数组定义后________(填 “能” 或 “不能”)修改大小;动态数组通过ReDim修改大小时,若不加Preserve,数组原有数据会________。 【答案】不能;被清空 【解析】静态数组内存编译时固定,无法修改大小;ReDim默认清空数据,Preserve是唯一保留数据的方式。 10、VB 中控件数组的Index属性值默认从________开始。 【答案】 0 【解析】 控件数组索引默认从 0 开始,与普通数组下标规则一致。 3、 程序填空题(本题共2小题,每题10分,共20分) 1、 下列VB程序实现的功能是:输入任意一个整数 x,将其插入到一个按升序排列的整数数组中,并保证数组在插入之后仍按原来的升序排列,请填写完整程序。 Const n As Integer = 10 Private Sub Form_Click() Dim a As Variant Dim i As Integer, x As Integer a = Array(1, 3, 4, 5, 9, 15, 22, 28, 30, 60) x = Val(InputBox("输入一个整数 x:")) ____(1)________ For i = n - 1 To 0 Step -1 If x < a(i) Then a(i + 1) = a(i) Else ___(2)________ Exit For End If Next i If i < 0 Then a(0) = x '输出 Dim s As String For i = 0 To n s = s & a(i) & " " Next i MsgBox "插入后数组:" & vbCrLf & s End Sub 【答案】 (1)ReDim Preserve a(n) (2)a(i + 1) = x 【解析】 ReDim a(n):将数组扩容为下标 0~10(共 11 个元素),预留插入新元素的空间;Preserve:保留数组原有数据。a(i+1) = a(i)表示当前元素后移,腾位置。 2、下列VB程序实现的功能是:有一个4行4列二维数组,现随机生成16个两位整数,并将它们存入到二维数组中,计算主对角线上的数据之和。 Private Sub Command1_Click() Dim a(4,4) As Integer ,i As Integer ,j As Integer Dim sum As Integer For i = 1 To 4 For j= 1 To 4 a(i,j) = Int(Rnd*90) + 10 Next j Next i For i = 1 To 4 For j= 1 To 4 If____(1)________ Then ___(2)________ End If Next j Next i Print "主对角线数据之和";sum End Sub 【答案】 (1)i = j (2)sum = sum + a(i,j) 【解析】 主对角线核心规则:二维数组中行号=列号的元素是主对角线元素;求和逻辑:初始化 sum 为 0,遍历筛选主对角线元素并累加。 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 学科网(北京)股份有限公司 $ 《Visual Basic程序设计(第6版)》电子工业出版社 项目九 数组 考试时间:90分钟 满分:100分 姓名 班级 学号 1、 单项选择题(本题共20小题,每题3分,共60分) 1. 关于Array函数的使用,正确的是( )。 A. Array函数可创建多维数组 B. Dim arr: arr = Array(1, "abc", True) 是合法的 C. Array函数创建的数组下界由Option Base决定 D. Dim arr(5) As Integer: arr = Array(1,2,3) 是合法的 2. 在 VB 中,以下关于数组初始化的说法错误的是( ) A. 可以在声明数组时直接初始化元素值 B. 数值型数组未初始化时元素值默认为 0 C. 字符串数组未初始化时元素值默认为空字符串 D. 数组初始化后不能再修改元素值 3. 关于 VB 二维数组的内存存储方式,下列说法正确的是( ) A. 按列存储,先存第一列所有元素,再存第二列 B. 按行存储,先存第一行所有元素,再存第二行 C. 按对角线顺序存储,先存主对角线元素,再存其他元素 D. 随机存储,无固定顺序 4. 对动态数组使用Erase语句的作用是( ) A. 将元素值置为 0 B. 扩展数组大小 C. 释放存储空间 D. 保留数据并重置维度 5. 下列有关控件数组与一般控件的区别的叙述中,最合理的是( ) A.控件数组一定由多个同类型的控件组成,一般控件只有一个控件 B.控件数组的Index为0,一般控件的Index为空 C.控件数组的Index为1,一般控件的Index为0 D.控件数组的建立通过Dim语句声明,一般控件不必声明 6、下列说法中正确的是( )。 A. 控件数组中所包含的各控件的Index属性值可以相同 B. Erase语句的作用是释放静态数组中各元素所占的内存空间 C. 控件数组中所包含的各控件的Name属性值不能相同 D. 数组下标的下界可以是负数 7、假定建立了一个名为Command1的命令按钮数组,则以下说法中错误的是( ) 。 A.数组中每个命令按钮的名称,如Name属性均为Command1 B.数组中每个命令按钮的大小都一样 C.数组中所有命令按钮可以使用同一个事件过程 D.在代码中访问任意一个命令按钮只需使用名称Command1 8、下面数组声明语句,( )正确。 A. Dim a[2,4] As Integer B. Dim a(2,4)As Integer C. Dim a(n,n)As Integer D. Dim a(2 4)As Integer 9、数组Dim D(3,1 To 10,1 To 15)有( )元素 A.100 B.600 C. 30 D. 450 10、一个数组说明为Dim a(0 to 5,1 to 5) As Integer,则该数组共有( )个元素。 A.25 B.36 C.30 D.不确定 11、以下数组定义语句中,错误的是( )。 A. Static a(10)As Integer B. Dim c(3, 1 To 4) C. Dim d(-10) D. Dim b(0 To 5, 1 To 3)As Integer 12、执行Dim arr() As Integer: ReDim arr(2,3): ReDim Preserve arr(2,5)后,数组的行数和列数分别为() A. 3 行 6 列 B. 2 行 5 列 C. 3 行 5 列 D. 2 行 6 列 13、一个二维数组可以存放 1 个矩阵。在程序开始有语句 Option Base 0,则下面定义的数组中正好可以存放 1 个4x3 矩阵,即只有 12 个元素的是( )。 A. Dim a(-2 To 0,2)As Integer B. Dim a(3,2)As Integer C. Dim a(4,3)As Integer D. Dim a(-1 To -4,-1 To -3)As Integer 14、在窗体上画三个单选按钮,组成一个名ChkOption的控件数组。用于标识各个控件数组元素的参数是( )。 A. Tag B. Index C. ListIndex D. Name 15、下列语句中的( )语句可以用来正确声明一个动态数组。 A. Private A(n) As Integer B. Dim A() As Integer C. Dim A(,) As Integer D. Dim A(1 to n) 16、若有数组声明语句Dim t(1 To 10) As Variant,则t被定义为( )。 A.数值数组 B.可调数组 C.字符串数组 D.可变类型数组 17、编写如下程序代码: Option Base 1 Private Sub Form_Click() Dim x, t Dim i As Integer Dim n As Integer x = Array(-8, 20, 15, 10, -30, 13, 17) n = UBound(x) For i = 1 To n / 2 t = x(i) x(i) = x(n - i + 1) x(n - i + 1) = t Next i Print x(n) End Sub 当程序运行时,单击窗体产生的输出结果为( )。 A. 20 B. 17 C. 10 D. -8 18、如有以下程序代码: Private Sub Command1_Click() Dim arr1(10), arr2(10) As Integer n = 3 For i = 1 To 5 arr1(i) = i arr2(n) = 2 * n + i Next i Print arr2(n); arr1(n) End Sub 运行程序后,在窗体上输出的内容为( ) A. 11 3 B. 3 11 C. 13 3 D. 3 13 19、如有以下程序代码: Option Base 0 Private Sub Command1_Click() Static city As Variant city = Array("北京", "上海", "天津", "重庆") Print city(1) End Sub 运行程序后,在窗体上输出的内容为( ) A.空白 B.错误提示 C.北京 D.上海 20、编写如下程序代码: Option Base 1 Private Sub Form_Click() Dim a a=Array(19,17,15,13,11,9,7,5,3,11) For i=1 To 10 If a(i)/3=a(i)\3 Or a(i)/5=a(i)\5 Then Sum=Sum+a(i) End If Next i Print "Sum="; Sum End Sub 运行时输出Sum的值是( )。 A.27 B.15 C.32 D.20 2、 填空题(本题共10小题,每题2分,共20分) 1. 在VB中,用________语句设定数组的下界,用_______和________语句分别返回数组的上、下界。 2、VB中,用Option Base 1说明后,Dim A(5,5)定义的数组有__________个元素。 3、 在使用动态数组时,如要改变数组的大小而又不丢失数组中的数据,应使用具有________关键字的ReDim语句。 4、 数组的下标下界是根据语句___________来决定。 5、 VB有两种类型的数组:固定大小的___________ 和在程序运行时可以改变的_______。 6、在VB中,静态数组声明中的下标只能是_______。而动态数组Redim语句中的下标还可以是_______的变量。 7、控件数组由一组相同类型的控件组成,这些控件共用一个相同的控件名,但是每个控件都有一个唯一的下标来区分,我们使用属性____来设置下标。 8、若要给控件数组Label1(Index)的第 3 个元素设置标题为 “提示”,语句为:________ = "提示"。 9、VB 中静态数组定义后________(填 “能” 或 “不能”)修改大小;动态数组通过ReDim修改大小时,若不加Preserve,数组原有数据会________。 10、VB 中控件数组的Index属性值默认从________开始。 3、 程序填空题(本题共2小题,每题10分,共20分) 1、 下列VB程序实现的功能是:输入任意一个整数 x,将其插入到一个按升序排列的整数数组中,并保证数组在插入之后仍按原来的升序排列,请填写完整程序。 Const n As Integer = 10 Private Sub Form_Click() Dim a As Variant Dim i As Integer, x As Integer a = Array(1, 3, 4, 5, 9, 15, 22, 28, 30, 60) x = Val(InputBox("输入一个整数 x:")) ____(1)________ For i = n - 1 To 0 Step -1 If x < a(i) Then a(i + 1) = a(i) Else ___(2)________ Exit For End If Next i If i < 0 Then a(0) = x '输出 Dim s As String For i = 0 To n s = s & a(i) & " " Next i MsgBox "插入后数组:" & vbCrLf & s End Sub 2、下列VB程序实现的功能是:有一个4行4列二维数组,现随机生成16个两位整数,并将它们存入到二维数组中,计算主对角线上的数据之和。 Private Sub Command1_Click() Dim a(4,4) As Integer ,i As Integer ,j As Integer Dim sum As Integer For i = 1 To 4 For j= 1 To 4 a(i,j) = Int(Rnd*90) + 10 Next j Next i For i = 1 To 4 For j= 1 To 4 If____(1)________ Then ___(2)________ End If Next j Next i Print "主对角线数据之和";sum End Sub 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 学科网(北京)股份有限公司 $

资源预览图

项目九  数组《Visual Basic程序设计》(电工版第六版)章节过关卷
1
项目九  数组《Visual Basic程序设计》(电工版第六版)章节过关卷
2
项目九  数组《Visual Basic程序设计》(电工版第六版)章节过关卷
3
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。