VB课件第五章
最新VB计算机语言基础第五章--过程资料PPT课件
Private Sub Form_Click()
Call Hello
'调用名为Hello的无参数子过程
End Sub
7
生物医学工程学院 计算机教研室
第五章 过程
计算机程序设计基础
例5.2 带参数的“节日问候” 子过程
Private Sub Command1_Click() Call Hello(Text1, Text2, Text3) 'Call Hello Text1, Text2, Text3
第五章 过程
计算机程序设计基础
生物医学工程学院 计算机教研室
第学工程学院 计算机教研室
第五章 过程
计算机程序设计基础
生物医学工程学院 计算机教研室
第五章 过程
计算机程序设计基础
例5.1 无参数的“节日问候”通用子过程
Private Sub Hello() '定义名为Hello的无参数子过程 MsgBox "您好!五一节快乐!"
10
生物医学工程学院 计算机教研室
第五章 过程
计算机程序设计基础
例5.3 根据键盘输入的两个数值,调用MaxValue函数求 得其中较大的一个
Private Sub Form_Click()
Dim a!, b!, c!
调用函数过程时应注意:
a = Val(InputBox("第一个✓数函:数"过, 程"输的入调"用))方式与标准函数
End Sub
Private Sub Hello(name1 As String, job1 As String, festival As String)
Dim a As String, b As String a = "您好!值此" b = "来临之际,向您和您的全家致以亲切的问候。" MsgBox name1 & job1 & a & festival & b End Sub
VB课件 第5章
第5章5.2 数据输入—InputBox函数 章
格式: Function InputBox(Prompt, [Title], [Default], [XPos], [YPos], [HelpFile], [Context]) As String 1. Prompt提示 2. Title标题 3. Default缺省值 4. [XPos], [YPos]位置 5. HelpFile、 Context帮助文件,目录号
Visual Basic语言程序设计 语言程序设计
二级教程
全国计算机等级考试
第5章 数据的输入与输出 章
数据输出—Print方法 数据输入—InputBox函数 MsgBox函数与语句 字形 打印机输出
第5章5.1 数据输出—Print方法 章
5.1.1Print方法
Print方法用于在窗体、立即窗口、图片框、打印机等对象中显示 文本字符串和表达式的值。Print方法的格式和功能与早期BASIC 语言中的PRINT语句类似。其使用语法如下: [对象名称 对象名称.]Print[表达式表 表达式表][,|;] 对象名称 表达式表 其中,“对象名称”可以是窗体、立即窗口(Debug)、图片框、打 印机(Printer)等对象。如果省略“对象表达式”,则在当前窗体 上输出。 例如: Form1.Print "Visual Basic" '在Form1窗体中显示"Visual Basic" Picture1.Print "Visual Basic" '在图片框Picture1中显示"Visual Basic" Print "Visual Basic“ '在当前窗体中显示"Visual Basic"
VB课件第5章
说明
函数体中必须存在形如“函数名 = 返回 值”的语句,其作用是将执行函数所产 生的结果保存到函数名中,从而使函 数可以通过函数名返回一个值
函数的特点就是可以通过函数名返回一 个值
说明
可选关键字Private或Public用于指定函 数的有效范围
Private --- 私有的局部函数,只能被同一 代码窗口中的过程所使用
P160
第5章 过 程
5.1 过程的定义与调用 5.2 变量的作用域
如:cmd1_Click( )、Form_Load( )等事件过程
Print、Circle等方法 事件过程
Sub过程
过程
子程序过程
Function过程
如:Int()、Randomize()、Len()等函数 除系统提供外,可根据需要自行编写
End Sub
简化后的程序代码
Private Sub cmdP_Click() Dim n As Integer, m As Integer Dim u As Double, v As Double n = Val(txtN.Text) m = Val(txtM.Text) u = fac(n) v = fac(n - m) lblVal.Caption = "排列数是" & u / v
[Exit Sub] 语句组2 End Sub
子程序体
强制退出 子程序
说明
子程序不能通过子程序名带回任何数据 只有通过形参(与实参配合)返回计算结果 形参个数 = 已知条件个数 + 返回值个数
调用Sub过程的一般形式
子程序名 实参列表
不带括号
程序代码接收实参n的值
Private Sub myFact(x As Integer, t As Double)
vb语法详解PPT课件
ppt精选版
24
Public Temp As Integer
' 定义全局变量
Private Sub Form_Load()
Temp = 1
' 将全局变量Temp 的值设置成 1
End Sub
Private Sub Command1_Click()
Dim Temp As Integer
' 定义局部变量
例如:在“通用声明”段声明如下变量 Private s As String Dim a As Integer,b As Single
ppt精选版
21
5.4.3 全局变量
全局变量也称公有的模块级变量,在窗体模块或 标准模块的顶部的“通用”声明段用Public关键字 声明,它的作用范围是整个应用程序,即可被本应 用程序的任何过程或函数访问。
Type Student Xh As Sting Xm As String Xb As String Nl As Integer Score As Single
End Type
ppt精选版
7
5.3 常量和变量
5.3.1 常 量
在程序运行过程中,其值不能被改变的量称为常量。在
VB中有三类常量:
• 普通常量
ppt精选版
15
二.变量声明
1.用Dim语句显式声明变量 形式:Dim 变量名 [AS 类型] Dim 变量名[类型符] 例 Dim iCount As integer , sum As single 等价于 Dim iCount%, sum!
2.隐式声明
Visual Basic允许用户在编写应用程序时,不声明变量 而直接使用,系统临时为新变量分配存储空间并使用,
VB教案(PPT)——第五章
解决此问题的根本方法,引入数组,始终保持输入的数据,一次输入,多次使用。
5.2
1. 静态数组及声明
静态数组及声明
数组不是一种数据类型,而是一组相同类型的变量的集合,数组必须先声明后使用。 两类数组: 静态(定长)数组、动态(可变长)数组
形式: Dim 数组名(下标1[,下标2…]) [As 类型] 声明了数组的名、维数、大小、类型 维数:几个下标为几维数组,最多60维。 下标:[下界 To ] 上界 省略下界为0 ,必须为常数。 每一维大小:上界-下界+1 数组大小: 每一维大小的乘积 例:Dim mark(1 to 100) As Integer
(3×4)个整型变量的空间,如图7-3所示。
• •
说明: (1)可以将二维数组的定义方法推 广至多维数组的定义。 • 例如:Dim D(3,1 To 10,1 To 15) 定义了一个3维数组,大小为 4 × 10 × 15。注 意在增加数组的维数时,数组所占的存储空间 会大幅度增加,所以要慎用多维数组,尤其是 Variant 数组,因为他们需要更大的存储空间。 • (2)在实际使用时,可能需要数组 的上界值和下界值,这可以通过LBound函数和 UBound函数来求得。其格式为:
一维数组
• 7.2.1 一维数组的定义
•
• •
数组应当先定义后使用,数组的定义 又称为数组的声明或说明。
对于固定大小的一维数组,用如下格 式进行定义: 说明符 数组名(下标)[As 类型]
•
•
例如:Dim y(5)As Integer
定义了一个一维数组,该数组的名字 为y,类型为Integer,占据6个(0~5)整型变 量的空间。
•
【例7.8】打印4名同学的英语、数学、
vb第五章课件
第四章 过程与变量的作用域
10
5.2 菜单编辑器
2.“名称”输入框 在“名称”输入框中输入该菜单控件的名称,用来在代码 编辑时引用该菜单或菜单项。菜单设置中的每一项,不论 是菜单名还是菜单项,只要在“标题”框中已输入标题,就 都要为其取一个控制名称,以便在编写程序代码时使用。 3.“索引”输入框 “索引”输入框为一个文本框,用来建立控件数组下标。 控件数组是一组享有同一控件名而拥有不同属性的控件。 4.“快捷键”输入框 “快捷键”输入框为一个列表框,在其右侧有一个下拉箭 头,单击这一箭头会出现一个列表框,列出了可供用户选 择的快捷键。
'将变量
第四章 过程与变量的作用域
23
5.5 弹出式菜单
单击“全选”菜单项时,选定全部文本的事件代码为: Private Sub menuSelAll_Click() rText1.SelStart = 0 rText1.SelLength = Len(rText1.Text) End Sub 单击“时间/日期”菜单项时,事件代码为: Private Sub menuTimeDate_Click() rText1.SelText = CStr(Time) + " " + CStr(Date) End Sub
第四章 过程与变量的作用域
22
5.5 弹出式菜单
单击“复制”菜单项时,事件代码为: Private Sub menuCopy_Click() clip = rText1.SelText menuCut.Enabled = False menuCopy.Enabled = False menuPaste.Enabled = True End Sub 单击“粘贴”菜单项时,事件代码为: Private Sub menuPaste_Click() rText1.SelText = clip clip中的内容粘贴到光标所在处 End Sub
VB第五章理论课件
这个程序的执行过程是:
S=0 For i=1 to 8 step 3 S=s+3 Next i Print s
第三次循环后:
S=0
i=1
判断i>8?
否
10>8?
是
S=9 i=10 运行结果:9
S=s+3 i=i+3
Print s
S=0 For i=1 to 8 step 3 S=s+3 Next i Print s
Print ―************‖
Print ―************‖ End Sub
循环结构基本概念
循环结构: 指在程序设计中,将一些重复执行的程序块放入一 定的语句中,使计算机自动地重复执行这些程序块。 特点:简化程序、节约内存、提高效率。 VB 提供了三种不同风格的循环语句 :
1、 For …Next 循环(指定循环次数,使用计数器重复运行语句。) 2、While……Wend 循环 3 、 Do …… Loop循环
具体执行过程为: 判断次数 1 2 3
循环变量i的值
进行判断 i < 10 i < 10 i < 10
执行 循环体 循环体 循环体
1 3 5
4 5
6
7 9
11
i < 10 i < 10
i > 10
循环体 循环体
Next后面的语句
在第6次进行判断时,循环变量i的值为11,超过
了终值10,所以结束循环,执行Next后面的语句。
Next I (循环次数4)
2.For…Next语句 执行过程 循环变量=初值 Y
循环变量是否超过终值
N
执行循环体
VB五章课件
3. 多行文本框 . 多行文本框 【例5】 设计程序,用户界面由一个文本框和一个命令按钮组成, 】 设计程序,用户界面由一个文本框和一个命令按钮组成, 在程序中输入一段文字.当单击命令按钮时,在文本框中将这一段 在程序中输入一段文字.当单击命令按钮时, 文字显示出来.如图. 文字显示出来.如图. 在窗体上添加一个文本框和两个命令按钮.选中文本框( 在窗体上添加一个文本框和两个命令按钮.选中文本框(单击此文 本框),到属性表中找到Multiline(多行) 属性,单击此属性,右 ),到属性表中找到 (多行) 属性,单击此属性, 本框),到属性表中找到 端出现一个向下的箭头,单击箭头打开下拉列表, 改成Tru 端出现一个向下的箭头,单击箭头打开下拉列表,将False改成 改成 e,表示为多行文本框.再设置其他属性值,属性设置如表 (见 ,表示为多行文本框.再设置其他属性值,属性设置如表5.6( 书103页)所示. 页 所示.
用户单击"清除"命令按钮,清除 个文本框的内容 个文本框的内容, 用户单击"清除"命令按钮,清除4个文本框的内容,然后输入 运算符" ,由于" 是错误的运算符 所以程序执行Case 是错误的运算符, 运算符"a",由于"a"是错误的运算符,所以程序执行 Else 分支中的语句,显示提示信息,如图5.7所示. 分支中的语句,显示提示信息,如图 所示. 所示
为了输入数据,可先单击文本框 为了输入数据,可先单击文本框txtOp1,使光标在文本框中 , 闪烁,表示此文本框是"激活" 或称"焦点"在该文本框上. 闪烁,表示此文本框是"激活"的,或称"焦点"在该文本框上. 此时可以从键盘将被加数( 此时可以从键盘将被加数(如12)输入到文本框 )输入到文本框txtOp1中. 中 再单击文本框txtOp3,使光标在其上闪烁,然后用键盘输入 再单击文本框 ,使光标在其上闪烁, 加数( 加数(如36), ), 再单击"加法运算"命令按钮,以执行cmdAdd_click事件过 再单击"加法运算"命令按钮,以执行 事件过 在文本框txtResult中显示相加之和. 中显示相加之和. 程,在文本框 中显示相加之和 在计算完一个题目后,如果还要继续计算,应再单击"清除" 在计算完一个题目后,如果还要继续计算,应再单击"清除" 命令按钮,以便清除原有数据. 命令按钮,以便清除原有数据.
VB第5章选择结构程序设计.ppt
使用块结构条件语句,按以上标准计算运费
14
分析: 设每公里每吨货物的基本运费为Price, 货物重为Weight, 运输距离为Distance, 折扣为Discount, 则总运费Freight的计算公式为:
Freight= Price * Weight * Distance *
(1 - Discount)
21
多分支选择语句的功能流程图:
T
语句组1 F
匹配表达式 表2
匹配 表达式表1
T 语句组2
F …… T
匹配表达式 表n
F
语句组n
语句组n+1
22
3. 说明 1) 测试表达式 : 数值或字符表达式 2) Case 后的“表达式表”可以为如下形式: ① 表达式1[,表达式2]... 如: Case 1 , 3 , 5 ② 表达式1 TO 表达式2 如: Case 10 TO 30 Case "A" TO "Z" ③ Is 关系运算符 表达式 如: Case Is >= 10 Case Is = 0 与 Case 0 相同 且三种形式可以混用,如: Case Is < -5 , 0 , 5 To 100
23
【例 5-3】用多分支选择语句实现:输入年 份和月份,求该月的天数。 分析:
当月份为1、3、5、7、8、10、12时,天 数为31天; 当月份为4、6、9、11时,天数为30天; 当月份为2时,如果是闰年则天数为29天, 否则天数为28天。某年为闰年的条件是: 年份能被4整除,但不能被100整除,或 年份能被400整除。
29
4) 不要在Case后使用布尔运算符表示条件 例如,要表示条件0<X<100,不能写成: Select Case X Case Is>0 And Is<100 ' 使用了And, 是错误的 … End Select 对于较复杂的条件,可以用块结构条件 语句来实现,而有些条件完全可以转换成 Case语句允许的几种形式之一。
VB6.0课件第五章
第五章VB的标准控件•应用:文本控件、图形控件、按钮控件、选择控件、滚动条控件、计时器控件、框架控件、焦点和Tab顺序的设置方法。
教学目的要求:第五章VB的标准控件5.1 文本控件5.2 图形控件5.3 命令按钮5.4 选择控件(单选按钮、复选框)5.5 选择控件(列表框、组合框)5.6 滚动条5.7 计时器控件5.8 框架5.9 焦点和Tab顺序5.1 文本控件5.5.1 标签(Label)主要用于显示文本信息。
Caption是它最常用的属性1. 标签的属性属性含义Name标签的名称。
默认Label1,Label2,…Caption标签显示内容。
默认Label1,Label2,…Visible可见性。
False:不可见;True(默认):可见Alignment 文字对齐方式。
0--左对齐(默认),1---右对齐,2---居中对齐。
AutoSize 自动调整大小。
True:根据内容自动调整标签大小;False(默认):标签保持设计时大小BackColor背景颜色ForeColor标签文字颜色BorderStyle标签边框。
0--无边框(默认);1--加边框Enabled是否可用。
True(默认):可用;False:不可用BackStyle 0:透明(不使用背景色);1(默认):不透明(使用背景色)标签常用事件:Click、DbClick、Change、MouseMove 5.1.2 文本框(TextBox)1. 属性属性含义Name文本框名称。
默认为Text1,Text2,Text3…Text文本框的内容MaxLength 允许文本框中输入的最大字符数。
0:最多不能超过32K。
默认值:0。
MultiLine 是否允许输入多行文本。
True:允许;False(默认),单行文本PasswordChar 口令。
默认为空字符串,输入的内容原样显示。
设置为一个字符,在输入内容时,显示的是设置的字符,实际输入的内容不变文本框能否被编辑。
VB教案_PPT_第5章
本章目录
多维数组声明
数组名(下标1 下标2 类型] Dim 数组名(下标1,下标2…) [As 类型 下标数决定了数组的维数, 每一维的大小=上界 上界+ 下标数决定了数组的维数 , 每一维的大小 上界 +1 ; 数组的大小为每一维大小的乘积。 数组的大小为每一维大小的乘积。 例 Dim x(2,4) As Long 声明了一个长整型的二维数组 x;共占据 ×5个长整 ;共占据3× 个长整 型变量的空间
5.1.3 动态数组及声明
动态数组指在声明数组时未给出数组的大小 (省略括号中的下标 ,当要使用它时,随时用 省略括号中的下标), 省略括号中的下标 当要使用它时, ReDim语句重新指出数组大小。使用动态数组的优 语句重新指出数组大小。 语句重新指出数组大小
点是根据用户需要,有效地利用存储空间,它是在程序执 点是根据用户需要,有效地利用存储空间, 行到ReDim语句时分配存储空间,而静态数组是在程序 语句时分配存储空间, 行到 语句时分配存储空间 编译时分配存储空间的。 编译时分配存储空间的。
VB程序设计简明教程 程序设计简明教程
本章目录
用数组解决问题的程序如下: 用数组解决问题的程序如下: 解决问题的程序如下 mark(99 99) 声明数组mark Dim mark(99) As Integer ' 声明数组 overn% Dim aver!, overn%, i% aver = 0 ' 输入成绩,求分数和 输入成绩, For i = 0 To 99 InputBox("输入学生的成绩 输入学生的成绩") mark(i) = InputBox("输入学生的成绩") aver = aver + mark(i) Next i ' 求100人的平均分 aver = aver / 100 人的平均分 overn = 0 ' 统计高于平均分的人数 For i = 0 To 99 If mark(i) > aver Then overn = overn + 1 Next i
VB程序设计第五章 PPT课件
5.3 标准文件输入/输出
Print#语句输出与Write语句输出的区别: (1)Print#语句在输出项中,用逗号分隔输出项, 可按分区格式输出;Write#语句用逗号分隔输出 项,不按分区格式输出,而是在输出项之间用逗 号分隔。对于Write语句,采用逗号分隔输出项还 是用分号分隔输出项没有差别。 (2)Print#语句生成的数据文件,数据项之间没 有逗号,而用Write#语句生成的数据文件,会在 文本上自动添加双引号,数据项之间有逗号。
5.3 标准文件输入/输出
2、顺序文件的写操作 3)输出项之间使用逗号分隔时,按分区格式输出 到文件,10列为一个分区。 4)在输出项中可使用spc(n)函数输出n个空格,使 用Tab(n)函数指定其后的输出项从n列开始输出。 5)Print #语句的末尾可以加分号、逗号或不加任何 符号。加分号表示下一个Print #语句的输出项不换 行,直接按紧凑格式输出;加逗号表示下一个Print #语句的输出项不换行,按分区格式输出;不使用 任何符号时,下一个Print #语句的输出项换行输出。
5.3 标准文件输入/输出
Private Sub Command1_Click() Open "j:\printtest.txt" For Output As #1 Print #1, "Print # 语句测试" Print #1, Print #1, "第一分区"; "第二分区" Print #1, "你好!", 2 * 3, 2 + 3 Print #1, Spc(2); "输出两个空格" Print #1, Tab(5); "从第五列开始输出" Print #1, "行 1" Print #1, 5; 6; -8 Close #1 MsgBox "j:\printtest创建成功!" End Sub
Visual Basic大学应用教程 -VB课件第5章-152
HScroll1.Max = 2400
HScroll1.Min = 1000
HScroll1.Value = 2400
rgeChange = 200
VScroll1.Max = 2000
VScroll1.Value = 2000
VScroll1.Min = 1000
rgeChange = 200
15
VB程序设计与数据库应用
列表框
5.5.3 列表框的常用事件和方法 1.列表框事件 列 表 框 事 件 主 要 包 括 Click 、 DblClick 、 GotFocus 和 LostFocus 等控件的通用事件。 2.列表框方法
(1)AddItem 方法 (2)Clear 方法 (3)RemoveItem 方法
格式为: Move left,top,width,height
5
VB程序设计与数据库应用
标签框
5.2.3 标签框应用实例 【例 5-1】 设计步骤: 1. 设计窗体界面及控件属性。 2. 利用标签框的 MOVE 方法编写程序代码。
6
VB程序设计与数据库应用
5.3 文本框
文本框(TextBox)是用来输入和显示文 本的控件。在工具箱中,其图标样式为 形 状的工具按钮。
Private Sub Command2_Click()
Label1.Caption = "显示时间"
Text1.Text = Time
End Sub
32
VB程序设计与数据库应用
习题 5-5 注释
Option Explicit
Dim i As Integer, j As Integer
Private Sub Command1_Click()
VB教学课件(第五章)
(2) 数组元素由变量名、圆括号以及括号中的下标 组成。 (3) 没有被声明为数组的Variant型变量也可以表示 数组。除了定长字符串以及用户自定义类型数 据之外, Variant变量可以表示任何类型的数组。
例如: Dim MyWeek,MyDay MyWeek = Array(“Mon”, “ Tue”, “ Wed”, “ Thu”, “Fri”, “ Sat”, “ Sun”) MyDay = MyWeek ( 3 ) Print MyDay
25
26
13
14
15
12. 字符串中间截取函数 ( Mid ) 语法:Mid ( 字符串,起始位置 [,长度] )
功能:从指定字符串参数中指定的起始位置开始,截 取指定长度的字符串。 说明: (1)字符串参数可以是任何有效的字符串表达式 。 (2)起始位置参数可以是任何有效的数值表达式 , 表示开始截取字符的起始位置。如果该参数超 过字符串参数中的字符数,则字符串为空串 。 (3)长度参数是可选项,可以是任何有效的数值表 达式,表示要截取的字符数。如果省略该参数, 则函数值将包含字符串参数中从起始位置到字 符串末尾的所有字符。 例:
22
例如: Dim Count ( 1 to 15 ) As Integer Dim Sum & ( 10 To 20 )
Ⅳ 、声明数组时,其下界可以省略。当省略下界
时, 其默认下界为0 。 例如: Dim Count ( 15 ) As integer Ⅴ 、 二维数组:用两个序号来表示元素的数组。 例如:Dim Matri ( 1 To 10 , 1 To 10 ) As double
1
2
3
4.数值函数 ( Val ) 语法:Val ( 字符串 ) 功能:将字符串参数中的数字字符转换成数值型数据 (数值函数 Val 与字符串函数 Str 的功能正好相反) 说明: (1)字符串参数可以是任何有效的字符串表达式。 (2)转换方法:当遇到第一个不能被其识别为数 字的字符时,即停止转换。另外,逗号“,” 和美圆符号“$”都不能被识别;空格、制表符 和换行符都将从参数中去掉;当遇到字母 E 或 D 时,将其按单精度或双精度实型浮点数 处理。 (3)函数值为 Double 型。 例:
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Option Base 1 „ 将数组声明中缺省<下界>下标设为 4.数组中所有元素都有相同的数据类型。如果类型不同, 1 则声明时必须将其数据类型定义为Variant。
5.1
一维数组
5 参数index的个数决定数组的维数。各参数间用逗号 分隔。参数可以是简单的数值表达式
例如,aa(4) 也可以是由关键字To组成的表达式 例如,sd(1 To 10)
多维数组
Dim 数 组 名 ([< 下 界 >] to < 上 界 > , [< 下 界 > to ]< 上 界 >,……) [As <数据类型>]
例如:
Dim a(5,5,5) As Dim Integer Integer „声明a是三维数组 ' 声明b是四维数组
b(2,6,10,5) As
5.2
【例5.1】 数组address(100,1)保存着101个学生的姓名及其家 庭住址,要求随意输入一个姓名,能够输出其对应的家庭住址。
Dim name As String,address(100,1) As String Dim I As Integer Name=InputBox(请输入查询的姓名:, 数据输入) For I=0 To 100 If address(I,0)=name Then MsgBox name+ 的家庭住址是:+ address(I,1) End If Next I End Sub
思考:
如果能使用Ai ( i=1,2,…..10 ) 的形式?
使用循环来写程序 VB中表示下标变量就是通过定义数组来实现的。
5.1
5.1
一维数组
一维数组 数组的概念:数组并不是一种数据类型,而是 一组相同类型数据的集合。用一个统一的名字(数 组名)代表逻辑上相关的一批数据,每个元素用下 标变量来区分;下标变量代表元素在数组中的位置。
数值型数组、字符串数组、逻辑数组、
日期型数组、变体数组等、对象数组。 按数组的维数可分为: 一维数组、二维数组、多维数组。
5.1
2. Байду номын сангаас组的声明
一维数组
Dim 数组名([<下界>to]<上界>)[As <数据类型>]
或:
Dim 数组名[<数据类型符>]([<下界>to]<上界>)
„ 声明了a数组有10个元素
5.3动态数组
动态数组:在声明时未给出数组的大小。在程序执行时分 配存储空间。
5.3.1 动态数组的建立及使用
建立动态数组包括声明和大小说明两步: 1.在使用Dim、Private或Public语句声明括号内为空的 数组。 格式:Dim | Private|Public 数组名()As 数据类型 例:Dim a() As Integer 2.在过程中用ReDim语句指明该数组的大小。 格式:ReDim [Preserve] 数组名(下标1[,下标2…])
5.3动态数组
(4)在过程中可以多次使用ReDim来改变数组的大小,也 可改变数组的维数。 例:ReDim x(10) ReDim x(20) x(20) = 30 Print x(20) ReDim x(20, 5) x(20, 5) = 10 Print x(20, 5)
5.4使用数组程序举例
VB中数组的表示形式: A(1), A(10) X(1,1), X(2,10) Y(0,0,0), Y(1,2,5)
„ „ „
一维数组 二维数组 三维数组
5.1
一维数组
Visual Basic中的数组分类: 按数组的大小(元素个数)是否可以改变来分为: 定长数组、动态(可变长)数组。 按元素的数据类型可分为:
5.4使用数组程序举例
【例5.3】设计一程序,要求能够动态完成窗体的建立
操作步骤如下 : ① 将标签控件的名称属性设为Labels,index属性设置 为0,Alignment属性设置为1(右对齐)。 ② 将文本框控件的名称属性设为Textboxes,index属性 设置为0。 ③ 将两控件的visible属性设置为False。 ④ 在窗体中绘制一命令按钮,名称属性设为Command1, 其Click事件代码如下所示:
5.4使用数组程序举例
运行程序后,窗体如图5.4所示,单击按钮后,窗体如图5.5所示。
图5.4
图 5.5
5.4使用数组程序举例
【例5.5】 计算某个同学5门课的总分,平均分。
5.4使用数组程序举例
事件代码如下 :
Private Sub Command1_Click() Dim score(1 To 5) As Single Dim i As Integer, sum As Single Dim aver As Single, str1 As String sum = 0 For i = 1 To 5
5.1
数组名(下标)
一维数组
3. 数组元素的引用
例如,定义一个数组,并分别给每一元素赋值。 Dim s1 (9) As String,I As Integer For I=0 To 9 s1 (I)=InputBox(请输入任何一个字符:) Next I
5.2
1. 多维数组的声明
定义多维数组的格式如下:
Preserve参数:保留数组中原来的数据
5.3动态数组
例:Redim A(10) Redim Preserve A(20)
说明:
(1)ReDim语句是一个可执行语句,只能出现在过程中, 并且可以多次使用,改变数组的维数和大小。 (2)定长数组声时中的下标只能是常量,而动态数组 ReDim 语句中的下标是常量,也可以是有了确定值的变量。 (3) Preserve为可选的关键字,当改变原有数组最末维 的大小时,使用此关键字可以保持数组中原来的数据。
例:Dim a(1 to 10) As Integer
数组元数的数据类型 1是下标的下界 10是下标的上界 Dim a%(1 to 10)
与上面声明等价形式:
5.1
说明:
一维数组
1.数组名的命名规则与变量的命名相同。 2.数组的元素个数:上界-下界+1。 3.缺省<下界>为0,若希望下标从1开始,可在模块的通用 部分使用Option Base语句将设为1。其使用格式是: Option Base 0|1 1 例如: „ 后面的参数只能取 0 或
2. 多维数组元素的引用
多维数组
多维数组元素的引用: 数组名(下标1,下标2[,下标3…])
例如 声明一个字符数组,并给数组中 每一个元素赋值。
Dim array(3,3) As String Dim row,col As Integer For row=0 To 3 For col=0 To 3 Array(row,col)=InputBox(请输入一个字符) Next col Next row
第五章
本章要求:
1.掌握数组的概念
数 组
2.掌握数组(一、二维)的定义及其引用, 3.掌握控件数组的建立及使用。
本章重点:
数组定义及引用方法,与数组有关的一些常用算法
本章难点:
与数组有关的一些常用算法
引例 输入10个数,输出它们的平均值及大于平 均值的那些数?
S=0: N=1 当 N<=10
输入 A S=S+A
A7=Val(InputBox(“Enter A7 Number”)) A8=Val(InputBox(“Enter A8 Number”)) A9=Val(InputBox(“Enter A9 Number”)) A10=Val(InputBox(“Enter A10 Number”)) S=A1+A2+A3+A4+A5+A6+A7+A8+A9+A10 Ave=S/10 IF A1>Ave Then Print A1 IF A2>Ave Then Print A2 IF A3>Ave Then Print A3 IF A4>Ave Then Print A4 ……….. „ 实际程序是不能这样写
。
5.4使用数组程序举例
Private Sub Command1_Click() Dim i As Integer Dim captions(6) As String Dim sizes(6) As Integer captions(1) = 姓名 captions(2) = 性别 captions(3) = 民族 captions(4) = 家庭地址 captions(5) = 联系电话 sizes(1) = 20 sizes(2) = 30 sizes(3) = 40 sizes(4) = 15 sizes(5) = 12
N=N+1
Dim For
Ave=S/10 打印 Ave
N%, S!, A!, Ave! N=1 to 10 A=Val(InputBox(“Enter A Number”)) S=S+A Next N Ave=S/10 Print Ave
如果使用:A1,A2,A3,A4,A5,A6,A7,A8,A9,A10 Dim N%, S!, Ave!, A1!, A2!….,A10! „ 实际程序是不能 这样写 A1=Val(InputBox(“Enter A1 Number”)) A2=Val(InputBox(“Enter A2 Number”)) A3=Val(InputBox(“Enter A3 Number”)) A4=Val(InputBox(“Enter A4 Number”)) A5=Val(InputBox(“Enter A5 Number”)) A6=Val(InputBox(“Enter A6 Number”))