VB数组应用实验报告

时间:2024.3.19

实验名称: VB程序设计

实验类别: 课 程 上 机

适用专业: 姓名: 徐申毅

实 验 报 告

一、 内容

数组及应用

二、 目的

(1)掌握一维数组和二维数组的定义及引用方法

(2)掌握动态数组的定义和使用

(3)能应用数组解决一些常见问题,如复杂统计,平均值,排序和查找等。

三、 设计思路

(1)首先定义一个一维数组生成10个二位数,假设第一个数为最大数,让第二个数与第一个数比大小,若大于,则交换值,循环至最后一个数,求出最大值,然后求和算出平均值,用选择法进行排序,Private Sub cmdinsert_Click() '数据插入,x = Val(InputBox("输入要插入的数据:")),将新的数组进行排序。

(2)定义二维数组,i为行数,j为列数;n为输出的行数, '第一列和主对角线为1s(i, 1) = 1, s(i, i) = 1;For i = 3 To n For j = 2 To i - 1, s(i, j) = s(i - 1, j - 1) + s(i - 1, j)实现每一个数等于它上面一行的同一列与前一列数之和。

(3)定义动态数组,ReDim Preserve a(n) '动态存储数组a增加1个元素,前n-1个元素值保持不变。然后用冒泡法对数组中的元素进行排序,输出排序后的结果。

四、 源程序

Option Base 1

Option Explicit

Dim a(11) As Integer ' 定义数组

Private Sub cmdcreat_Click() '产生的一维数组

Dim i As Integer

Picture1.Cls

Picture1.Print "产生的一维数组为:"

Randomize

For i = 1 To 10

a(i) = Int(Rnd * 20 + 10)

Picture1.Print a(i);

Next i

Picture1.Print

End Sub

2

Private Sub cmdmax_Click() '求最大元数及所在的位置

Dim max As Integer, p As Integer, i As Integer

max = a(1) ' 假设第一元素就是最大元素 p = 1

For i = 2 To 10

If a(i) > max Then

max = a(i)

p = i

End If

Next i

Picture1.Print

Picture1.Print "第 " & p; " 个元素 " & a(p) & " 为最大元素" End Sub

Private Sub cmdave_Click() '计算平均值

Dim ave As Single, i As Integer

For i = 1 To 10

ave = ave + a(i)

Next i

ave = ave / 10

Picture1.Print

Picture1.Print "产生的随机数平均值为:" & ave

End Sub

Private Sub cmdsort_Click() '使用选择法排序

Dim i%, j%, p%, t%

For i = 1 To 9

p = i

For j = i + 1 To 10

If a(p) > a(j) Then p = j

Next j

t = a(i): a(i) = a(p): a(p) = t

Next i

Picture1.Print

Picture1.Print "排序后的一维数组为:"

For i = 1 To 10

Picture1.Print a(i);

Next i

Picture1.Print

End Sub

Private Sub cmdinsert_Click() '数据插入

3

Dim x%, p%, i%

x = Val(InputBox("输入要插入的数据:")) p = 1

Do While x > a(p) And p <= 10

p = p + 1

Loop

For i = 10 To p Step -1

a(i + 1) = a(i)

Next i

a(p) = x

Picture1.Print

Picture1.Print "插入后的一维数组为:" For i = 1 To 11

Picture1.Print a(i);

Next i

End Sub

Private Sub Command1_Click()

Dim s() As Integer, i%, j%, n%

Form1.Cls

n = Val(Text1)

ReDim s(n, n)

'第一列和主对角线为1

For i = 1 To n

s(i, 1) = 1

s(i, i) = 1

Next i

For i = 3 To n

For j = 2 To i - 1

s(i, j) = s(i - 1, j - 1) + s(i - 1, j) Next j

Next i

'打印杨辉三角

For i = 1 To n

For j = 1 To i

' 让每个数据占4列输出

Print Spc(4 - Len(Str(s(i, j)))); s(i, j); Next j

Print

4

Next i

End Sub

Dim a() As String, n%

Private Sub Text1_KeyPress(KeyAscii As Integer)

Dim i As Integer, j As Integer, k As Integer, t As String

If KeyAscii = 13 Then

n = n + 1

ReDim Preserve a(n) '动态存储数组a增加1个元素,前n-1个元素值保持不变。

a(n) = Text1.Text

Text2.Text = Text2.Text + Text1.Text + Chr(13) + Chr(10)

Text1.Text = ""

Text3.Text = ""

For i = 1 To n - 1

p = i

For j = i + 1 To n

If a(p) > a(j) Then p = j

Next j

t = a(i)

a(i) = a(p)

a(p) = t

Next i

For i = 1 To n

Text3.Text = Text3.Text & a(i) & Chr(13) + Chr(10)

Next i

End If

End Sub

五、 结果

(1)随机产生10个任意的二位正整数存放在一维数组中,求数组的最大值,平均值,能实现将数据按升序排列,并且使用InputBox函数插入一个新数据,使数组仍然按升序排列,结果显示在图片框中。

(2)打印杨辉三角形(杨辉三角形为一个下三角矩阵,每一行第一个元素和主对角线上元素都为1,其余每一个数正好等于它上面一行的同一列与前一列数之和)。

(3)输入系列字符串,按升序排列输出,要求:

1:每输入一个字符串,按回车键后即把该字符串存放到数组中,并输出在 5

排序前的文本框Text2中;

2:单击“排序”命令按钮,字符数组“升序”排序,并在排序后的文本框Text3中输出。

六、 总结

本次实验让我学会了定义和使用数组解决排序,统计等问题。

6


第二篇:VB数组实验报告


               

   2011  2012     学年第 2   学期)

课程名称:计算机程序设计(VB

    名:

    院:

    业:

    级:      2011         

    号:

                 

2012  年   4 月   17 日   第   9.10  节        综合 楼        525               号室

更多相关推荐:
C语言实验报告 数组

C语言实验报告实验七数组1实验目的1熟练掌握一维数组二维数组的定义初始化和输入输出方法2熟练掌握字符数组和字符串函数的使用3掌握与数组有关的常用算法如查找排序等2实验指导1对任意一个一维型数组从中找出数组元素的...

实验六数组实验报告

实验六数组一实验目的1掌握一维数组与二维数组的定义赋值及输入输出方法2掌握字符数组和字符串函数的使用3掌握与数组有关的算法特别是排序算法二实验内容用选择法对个整数排序个整数用scanf函数输入其程序为inclu...

C语言数组实验报告

C语言数组实验报告,内容附图。

C语言数组实验报告

北京联合大学信息学院程序设计基础课程调研研究报告题目姓名学号专业计算机科学与技术编制时间20xx528版本指导教师北京联合大学信息学院编制数组实验程序设计报告20xx年5月28日班号姓名学号第一章实验情况概述本...

c++数组实验报告

C上机实验报告上机内容数组专业班级电气信息类1203班学号姓日期20xx年3月13日1目录1实验目的2实验内容3程序源码4调试结果5实验心得2实验五数组1实验目的1掌握一维数组和二维数组的定义赋值和输入输出的方...

c语言实验7数组实验报告

实验报告课程名称程序设计实验项目名称数组班级与班级代码14级计算机科学与技术1班实验室名称或课室SS1332专业计算机科学与技术任课教师学号姓名实验日期20xx年月日广东商学院教务处制指导教师评分后学年论文交院...

C语言实验报告数组

实验报告实验课程名称高级C语言程序设计实验项目名称数组年级09级专业数学学生姓名李军学号0907010170理学院实验时间20xx年4月22日学生实验室守则一按教学安排准时到实验室上实验课不得迟到早退和旷课二进...

实验总结报告-串和数组

实验总结报告栈和队列学号姓名时间一目的1做实验的目的22撰写实验报告的目的二内容1说明实验次数及实验内容本次实验用一个实验课时完成实验内容1编写函数StrAssignStrCopyStrLenthStrComp...

JAVA字符串数组实验报告

西安邮电大学计算机学院课内实验报告实验名称字符串和数组专业名称班级学生姓名学号8指导教师张荣实验日期20xx年10月16日20xx年10月16日一实验目的及实验环境1掌握一维和多维数组的声明分配空间以及初始化2...

C++实验报告——数组和指针

湖南商学院实验报告课程名称C语言程序设计实验名称数组和指针专业班级姓名学号实验日期第四周星期三七八节实验地点E60320xx20xx学年度第二学期第2页共6页第3页共6页第4页共6页第5页共6页第6页共6页

C语言程序设计实验报告(数组)

C语言程序设计实验报告数组1实验目的1熟练掌握一维数组二维数组的定义初始化和输入输出方法2熟练掌握字符数组和字符串函数的使用3掌握与数组有关的常用算法查找排序等2实验内容编写函数catStrcharstr1ch...

实验二 MATLAB数值数组及其运算实验报告

实验二MATLAB数值数组及其运算班级电子信息工程2班学号1004101049姓名王率率实验目的1掌握数值数组的创建和寻访方法2理解数组运算和矩阵运算的含义3熟悉标准数组生成函数和数组操作函数的运用4熟悉两类特...

数组实验报告(32篇)