好文档 - 专业文书写作范文服务资料分享网站

全国计算机二级VB笔记

天下 分享 时间: 加入收藏 我要投稿 点赞

Print \小于0的数据个数为:\ Print \等于0的数据个数为:\ Print \大于0的数据个数为:\End Sub

例2:打印下面的图形:----------------------------- 选讲内容 ********* ******** ******* ****** ***** **** *** ** * * ** *** **** ***** * *** *****

*******

Private Sub Form_click() Dim i As Integer, j As Integer For i = 1 To 9 Print Tab(5); For j = 1 To 10 - i Print \ Next j Print Next i End Sub

Private Sub Form_click()

Dim i As Integer, j As Integer For i = 1 To 5 Print Tab(5); For j = 1 To i Print \

Next j Print Next i End Sub

Private Sub Form_click() Dim i As Integer, j As Integer For i = 1 To 4

Print Tab(9 - i); For j = 1 To 2 * i - 1 Print \ Next j

Print Next i End Sub

例3 从键盘输入任意个数,求出这些数的总和和平均值! Dim a() as integer

Dim I as integer, sum as integer, avg as single, t as integer Do

I=inputbox(―请输入一数!‖) If i=-1 then Exit do Else

T=t+1

Redim preserve a(t) A(t)=i

Sum=sum+i endif

Loop

Avg=sum/ubound(a)

Print ―sum=‖;sum,‖avg=‖+cstr(avg)

例4 编程实现随机生成20个互不相同的两位整数! Dim a() as integer ,I as integer, n as integer,j as integer Redim a(20) as integer For i=1 to 20

k= inputbox(―请输入N的值‖) for j=1 to i-1 if a(j)=k then exit for next j

if j>i-1 then a(i)=k else i=i-1

endif next i

例 5 在一组有序数列中插入一个数,要求插入后的数还是有序数列! Dim a() as integer

Dim I as integer , n as integer, k as integer For i=1 to 10

A(i)=10*i

Next i

N=inputboxa(―请输入要插入的数‖)

以下有两种方案1 前插入 2 后插入(可以用班级中的同学进行示范教学) T=10

Redim preserve a(11) Do while n

A(t+1)=n For i=1 to 11 Print a(i);

Next i

后插入法给学生讲清算法的原理,要求学生自己课后写出程代码!

9.2 控件数组

一、控件数组:

动态数组指在声明数组时未给出数组的大小(省略括号中的下标),当要使用该数组时,随时可用ReDim语句重新定义数组的大小。使用动态数组的优点是:用户可以根据需要有效地利用存储空间,它是在程序执行到ReDim语句时分配存储空间。

二、建立控件数组方法:

1复制现存控件:

在窗体上绘制控件数组中第一个元素的控件→设置它的名称属性→右键单击此对象→复制→右击窗体→粘贴。(重复复制操作) 将已存在的控件组成一个数组。(同一类型的控件)

确定第一个元素→选定要包含在控件数组中的其它对象→将它的名称属性设置成和第一个元素相同。(重复此操作)

说明:1 控件数组中的每个元素下标为此控件的index 属性值(≤32767) 控件数组中的每个控件共享一个事件过程。 2创建同名控件

在控件面板中直接添加相同类型的控件到窗体上,将它们的名子都命名为同一个名子时,系统将会提示你创建一个控件数组

三、应用举例

使用控件数组实现字体格式的设置!

9.3 数组应用例题(根据时间可以选择一个讲!) 根据需要,选择1-2道下面的题目,给学生讲清楚算法的思想!

1 排序

例5-3 选择排序法 直接排序法

Option Explicit

Option Base 1

Private Sub CmdSort_Click()

Dim Sort(10) As Integer, Temp As Integer Dim I As Integer, J As Integer Randomize For I = 1 To 10

Sort(I) = Int(Rnd * (100 - 1)) + 1 Text1 = Text1 & Str(Sort(I)) Next I

For I = 1 To 9

For J = I + 1 To 10

If Sort(I) > Sort(J) Then Temp = Sort(I) Sort(I) = Sort(J) Sort(J) = Temp

End If Next J

Text2 = Text2 & Str(Sort(I)) Next I

Text2 = Text2 & Str(Sort(10)) End Sub

Option Explicit Option Base 1

Private Sub CmdSort_Click()

Dim Sort(10) As Integer, Temp As Integer Dim I As Integer, J As Integer Dim Pointer As Integer Randomize For I = 1 To 10

Sort(I) = Int(Rnd * (100 - 1)) + 1 Text1 = Text1 & Str(Sort(I)) Next I

For I = 1 To 9 Pointer = I

For J = I + 1 To 10

If Sort(Pointer) > Sort(J) Then Pointer = J End If Next J

If I <> Pointer Then Temp = Sort(I) Sort(I) = Sort(Pointer) Sort(Pointer) = Temp End If

Text2 = Text2 & Str(Sort(I)) Next I

Text2 = Text2 & Str(Sort(10))

End Sub

2 查找

例:5-4 顺序查找程序 (界面见P105) 先介绍For Each –next 结构的语句: Option Explicit

Option Base 1 Dim Search As Variant

全国计算机二级VB笔记

Print\小于0的数据个数为:\Print\等于0的数据个数为:\Print\大于0的数据个数为:\EndSub例2:打印下面的图形:-----------------------------选讲内容************************************************
推荐度:
点击下载文档文档为doc格式
7y9qx0494w7f1wl0kiiy
领取福利

微信扫码领取福利

微信扫码分享