项目九 第30练 二维静态数组的程序设计《Visual Basic 程序设计》(电工版第六版)一课一练
|
2份
|
9页
|
47人阅读
|
2人下载
内容正文:
编写说明:考虑到中职学生普遍基础知识相对薄弱的情况,我们依据支架式教学理念,精心编制了《Visual Basic程序设计(第6版)》(电子工业出版社)一课一练。专辑里的每一份练习,都与课堂所授知识点紧密相关,题目围绕课堂所学知识点呈现。目的在于激发学生的学习兴趣,培养他们的学习自觉性,帮助学生扎实掌握课程的基本概念与基本方法,为他们后续的进一步提升奠定坚实基础。
本卷是《Visual Basic程序设计(第6版)》(电子工业出版社)一课一练的项目九的第30练,内容涵盖项目九数组相关内容。
《Visual Basic程序设计(第6版)》(电子工业出版社)第30练
项目九 数组
任务三 二维静态数组的程序设计
1、 单项选择题(本题共5小题)
1、下列语句所声明的数组的元素个数为( )。
Dim a(3 To 6, - 2 To 2)
A.20
B.16
C.24
D.25
2、一个二维数组可以存放一个矩阵。在程序开始有语句 Option Base 0,则下面定义的数组中正好可以存放 1 个4╳3 矩阵,即只有 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
3、如有以下程序代码:
Private Sub Command1_Click()
Dim array1(10, 10) As Integer
Dim i, j As Integer
For i = 1 To 3
For j = 2 To 4
array1(i, j) = i + j
Next j
Next i
Text1.Text = array1(2, 3) + array1(3, 4)
End Sub
运行程序后,在窗体上输出的内容为( )
A.12
B.13
C.14
D.15
4、默认情况下,语句:Dim student(2,3,4) 定义的数组有( )个元素。
A.60
B.9
C.24
D.12
5、如有以下程序代码:
Private Sub Command1_Click()
Dim arr(3, 3) As Integer
For i = 1 To 3
For j = 1 To 3
If j = i Or j = 3 - i + 1 Then
arr(i, j) = 1
Else
arr(i, j) = 0
End If
Next j
Next i
Print arr(1, 1) + arr(2, 2) + arr(3, 3)
End Sub
运行程序后,在窗体上输出的内容为( )
A.0
B.1
C.2
D.3
2、 填空题(本题共5小题)
1、在 VB 中,声明一个 5 行 6 列的整型二维数组arr,下标从 0 开始,语句为:___________。
2、VB 中二维数组的下标默认从_____开始,若要指定下标从 1 开始,需在模块开头添加语句:_____。
3、二维数组arr(1 To 4, 1 To 5)中元素的总个数为_______。
4、使用UBound函数获取二维数组arr的行上界,语句为UBound(arr, ______)
5、二维数组arr(m, n),采用默认下标,数组的元素总个数计算公式为:______。
三、程序填空题题
1、下列程序功能:用于查找 4×3 二维数组的最大值,并输出其行、列下标,请补充完整代码。
Private Sub Command1_Click()
Dim arr(0 To 2, 0 To 2) As Integer ' 3行3列,下标0~2
Dim maxVal As Integer, maxRow As Integer, maxCol As Integer
Dim i As Integer, j As Integer
Randomize
For i = 0 To 2
For j = 0 To 2
arr(i, j) = Int(Rnd * 100) + 10
Next j
Next i
Print "生成的3×3随机数组(下标从0开始):"
For i = 0 To 2
For j = 0 To 2
Print arr(i, j);
Next j
Print
Next i
______(1)________
maxRow = 0
maxCol = 0
For i = 0 To 2
For j = 0 To 2
If _____(2)_________ Then
maxVal = arr(i, j)
maxRow = i
maxCol = j
End If
Next j
Next i
Print vbCrLf & "最大值:" & maxVal
Print "最大值下标:行下标" & maxRow & ",列下标" & maxCol
End Sub
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$
编写说明:考虑到中职学生普遍基础知识相对薄弱的情况,我们依据支架式教学理念,精心编制了《Visual Basic程序设计(第6版)》(电子工业出版社)一课一练。专辑里的每一份练习,都与课堂所授知识点紧密相关,题目围绕课堂所学知识点呈现。目的在于激发学生的学习兴趣,培养他们的学习自觉性,帮助学生扎实掌握课程的基本概念与基本方法,为他们后续的进一步提升奠定坚实基础。
本卷是《Visual Basic程序设计(第6版)》(电子工业出版社)一课一练的项目九的第30练,内容涵盖项目九数组相关内容。
《Visual Basic程序设计(第6版)》(电子工业出版社)第30练
项目九 数组
任务三 二维静态数组的程序设计
1、 单项选择题(本题共5小题)
1、下列语句所声明的数组的元素个数为( )。
Dim a(3 To 6, - 2 To 2)
A.20
B.16
C.24
D.25
【答案】 A
【解析】二维数组的总元素个数 = 「行维度的元素个数」 × 「列维度的元素个数」;而单个维度的元素个数 = 该维度的上界 - 该维度的下界 + 1。
2、一个二维数组可以存放一个矩阵。在程序开始有语句 Option Base 0,则下面定义的数组中正好可以存放 1 个4╳3 矩阵,即只有 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
【解析】判断二维数组能否存放 4×3 矩阵,关键是计算数组第一维(行)的元素个数 × 第二维(列)的元素个数 = 12,且行个数为 4、列个数为 3。
3、如有以下程序代码:
Private Sub Command1_Click()
Dim array1(10, 10) As Integer
Dim i, j As Integer
For i = 1 To 3
For j = 2 To 4
array1(i, j) = i + j
Next j
Next i
Text1.Text = array1(2, 3) + array1(3, 4)
End Sub
运行程序后,在窗体上输出的内容为( )
A.12
B.13
C.14
D.15
【答案】A
【解析】该程序是定义二维数组array1,通过双重循环给指定范围的数组元素赋值(赋值规则为array1(i,j) = i + j),最后计算两个指定元素的和并赋值给文本框。
4、默认情况下,语句:Dim student(2,3,4) 定义的数组有( )个元素。
A.60
B.9
C.24
D.12
【答案】 A
【解析】VB 中数组默认下标从0开始,多维数组的总元素个数 = 每一维的元素个数相乘;某一维的元素个数 = 上界 - 下界 + 1。
5、如有以下程序代码:
Private Sub Command1_Click()
Dim arr(3, 3) As Integer
For i = 1 To 3
For j = 1 To 3
If j = i Or j = 3 - i + 1 Then
arr(i, j) = 1
Else
arr(i, j) = 0
End If
Next j
Next i
Print arr(1, 1) + arr(2, 2) + arr(3, 3)
End Sub
运行程序后,在窗体上输出的内容为( )
A.0
B.1
C.2
D.3
【答案】 D
【解析】定义 3×3 的二维数组arr,求和主对角线上的 3 个元素的和。
2、 填空题(本题共5小题)
1、在 VB 中,声明一个 5 行 6 列的整型二维数组arr,下标从 0 开始,语句为:___________。
【答案】 Dim arr(4, 5) As Integer
【解析】二维数组声明语句需指定数组名、维度、数据类型。
2、VB 中二维数组的下标默认从_____开始,若要指定下标从 1 开始,需在模块开头添加语句:_____。
【答案】 0;Option Base 1
【解析】若要将数组默认下标起始值改为 1,必须在模块的开头(所有过程之前)添加语句Option Base 1。
3、二维数组arr(1 To 4, 1 To 5)中元素的总个数为_______。
【答案】 20
【解析】第一维(行):下标范围1 To 4,元素个数 = 4 - 1 + 1 = 4;第二维(列):下标范围1 To 5,元素个数 = 5 - 1 + 1 = 5。
4、使用UBound函数获取二维数组arr的行上界,语句为UBound(arr, ______)
【答案】 1
【解析】UBound函数第二个参数指定维度:1代表行维度,2代表列维度。
5、二维数组arr(m, n),采用默认下标,数组的元素总个数计算公式为:______。
【答案】(m+1)×(n+1)
【解析】默认下标从0开始,因此需要+1。
三、程序填空题题
1、下列程序功能:用于查找 4×3 二维数组的最大值,并输出其行、列下标,请补充完整代码。
Private Sub Command1_Click()
Dim arr(0 To 2, 0 To 2) As Integer ' 3行3列,下标0~2
Dim maxVal As Integer, maxRow As Integer, maxCol As Integer
Dim i As Integer, j As Integer
Randomize
For i = 0 To 2
For j = 0 To 2
arr(i, j) = Int(Rnd * 100) + 10
Next j
Next i
Print "生成的3×3随机数组(下标从0开始):"
For i = 0 To 2
For j = 0 To 2
Print arr(i, j);
Next j
Print
Next i
______(1)________
maxRow = 0
maxCol = 0
For i = 0 To 2
For j = 0 To 2
If _____(2)_________ Then
maxVal = arr(i, j)
maxRow = i
maxCol = j
End If
Next j
Next i
Print vbCrLf & "最大值:" & maxVal
Print "最大值下标:行下标" & maxRow & ",列下标" & maxCol
End Sub
【答案】
(1) maxVal = arr(0, 0)
(2) arr(i, j) > maxVal
【解析】该程序的核心思路要先把第一个元素arr(0,0)设为初始最大值,同时记录其下标;遍历所有元素,只要当前元素比maxVal大,就更新最大值和对应下标,确保最终得到全局最大值。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$