VB实验三.doc_第1页
VB实验三.doc_第2页
VB实验三.doc_第3页
VB实验三.doc_第4页
VB实验三.doc_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实 验 报 告 三实验目的(1)掌握一维数组(静态、动态)定义及使用(2)掌握二维数组(静态、动态)定义及使用(3)掌握“控件数组”的使用(4)掌握数组相关算法(求最值,排序,查找)(5)通过数组巩固循环及多重循环程序设计实验内容【实验1】已知10个数为53、67、42、89、65、18、98、67、54、36,编写程序,使用Array函数存储这10个数并求和。程序运行界面如下图所示。(10分) 掌握一维静态数组的定义及使用实验结果:【实验1 代码】Option Base 1Private Sub Form_Click() Dim a(), sum% sum = 0 a = Array(53, 67, 42, 89, 65, 18, 98, 67, 54, 36) For i = 1 To 10 Step 1 sum = sum + a(i) Next i Print 10个数字和为 & sumEnd Sub【实验1 典型结果】【实验2】动态数组声明及输入输出,程序运行界面如下图所示。(10分)掌握动态数组的使用实验结果:【实验2 代码】 Private Sub command1_Click()Dim a() As Integer n = 3 ReDim a(n) a(1) = 10 a(2) = 20 a(3) = 30 Print a(1), a(2), a(3) Print 用Redim Preserve a(n)改变数组大小 n = 4 ReDim Preserve a(n) a(4) = 40 Print a(1), a(2), a(3), a(4)End Sub 【实验2 典型结果】【实验3】编写程序,定义一个二维静态数组,输出下列矩阵并分别计算矩阵两条对角线元素之和。(10分)程序运行界面如下图所示。掌握二维数组的定义及使用实验结果:【实验3 代码】Option ExplicitOption Base 1Private Sub Form_Click() Dim a%(5, 5), i%, j%, sum%, n%, s1%, s2% For i = 1 To 5 For j = 1 To 5 a(i, j) = 5 * (i - 1) + j 给数组赋值 Next j Next i For i = 1 To 5 For j = 1 To 5 Print Tab(7 * j); a(i, j); 输出数组 Next j Print Next i n = 5 s1 = 0 s2 = 0 For i = 1 To 5 For j = 1 To n If i = j Then s1 = s1 + a(i, j) 主对角线之和 If i + j = n + 1 Then s2 = s2 + a(i, j) 次对角线之和 Next j Next i Print 主对角线之和=; s1 Print 次对角线之和=; s2End Sub【实验3 典型结果】【实验4】利用控件数组模拟电话拨号程序,界面设计如下图所示。要求按任意一个字符,在文本框中显示,最多可拨11位数字字符,单击“重拨”按钮,重新显示原来所拨的号码。建立Command1控件数组,索引为09;Command2和Command3分别为“重拨”、“清屏”按钮;Timer1控件为“重拨”服务。(10分)掌握控件组的使用实验结果:【实验4 代码】Dim no As String, i As IntegerPrivate Sub Command1_Click(index As Integer) Text1.Text = Text1.Text & index End SubPrivate Sub Command2_Click() no = Text1.Text Text1.Text = i = 1 Timer1.Interval = 200 Timer1.Enabled = True End SubPrivate Sub Command3_Click() Text1.Text = End SubPrivate Sub Timer1_Timer() Text1.Text = Text1.Text & Mid(no, i, 1) i = i + 1 If i Len(no) Then Timer1.Enabled = FalseEnd Sub【实验4 典型结果】【实验5】随机产生10个100999之间的数以递增顺序存放在列表框中,并实现对列表框内数据插入、删除等操作,使得列表框内数据还是有序。程序运行界面如下图所示(10分)掌握数组插入与删除操作实验结果:【实验5 代码】Option Base 1Option ExplicitPrivate Sub command1_Click() Dim i%, j% For i = 1 To 10 j = Int(Rnd * 900 + 100) List1.AddItem j Next iEnd SubPrivate Sub Command2_Click() Dim x%, y% x = Val(Text1.Text) For y = 1 To List1.ListCount - 1 If x a(j) Then t = a(i): a(i) = a(j): a(j) = t End If Next j Print a(i); Next i End Sub【实验7 典型结果】【实验8】选择法对数组中的元素按升序排列,程序运行界面如下图所示。(10分)掌握数组常用算法:数组排序实验结果:【实验8 代码】Option Base 1Private Sub Form_Click() Dim a(), i%, j%, t%, P% a = Array(82, 12, 78, 36, 73, 90, 18, 99, 67, 56) n = UBound(a) Print 比较法排序前: For i = 1 To n Print a(i); Next i Print Print 比较法排序后: For i = LBound(a) To n - 1 P = i For j = i + 1 To n If a(j) a(P) Then P = j Next j t = a(i): a(i) = a(P): a(P) = t Print a(i); Next i End Sub【实验8 典型结果】【实验9】用冒泡对数组中的元素按升序排列,程序运行如下图所示。(10分)掌握数组常用算法:数组排序实验结果:【实验9 代码】Option Base 1Option ExplicitPrivate Sub Form_Click() Dim a(), i%, n%, j%, t% Dim flag As Boolean a = Array(12, 78, 36, 73, 89, 18, 90, 67, 56, 99) n = UBound(a) For i = 1 To n Print a(i); Next i Print For i = 1 To n - 1 For j = 1 To n - i If a(j) max Then max = a(i) If a(i) min Then min = a(i) Next i Print 最大值为:; max; 最小值为:; min” End Sub 【实验10 典型结果】【加分1】利用一维数组,统计一个班学生成绩059,6069,7079,8089,90100各分数段的人数,生成一个各分数段的柱状图。人数为运行时输入,成绩给定方法要求为键盘输入。(10分,最高100

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论