内蒙古工业大学信息工程学院
实 验 报 告
课程名称: 高级语言程序设计(VB)Ⅰ
实验名称:选择、循环、数组和过程综合程序设计
实验类型: 验证性□ 综合性√ 设计性□
实验室名称: 校计算中心
班级: 学号:
姓名: 组别:
同组人: 成绩:
实验日期:
实验报告撰写要求
一、 实验前用预习报告纸撰写预习报告,预习报告包括以下内容
1. 实验目的
2. 实验用仪器设备、器材或软件环境
3. 实验原理、方案设计、程序框图、预编程序等
4. 实验过程中需要记录的实验数据表格
二、 实验过程中,要认真观察,仔细记录
三、 完成实验后用实验报告纸撰写实验报告,包括以下内容
1. 仪器设备型号及编号
2. 实验器材或软件环境
3. 实验步骤、程序调试方法
4. 实验数据处理及结果分析
5. 实验中存在的问题
6. 体会及思考题
四、 报告撰写时,要求格式规范、书写整齐
预习报告成绩: 指导教师审核(签名): 年 月 日
预习报告
(一)实验目的
学会综合运用选择结构、循环结构、数组和过程进行程序设计的方法。
(二)实验内容
利用随机函数产生80个10~99之间的随机整数,将其中的偶数按由小到大的顺序排列并输出,将奇数按由大到小的顺序排列并输出;在产生的80个随机整数中,找出其中的素数,并将这些素数求和。
(三)实验要求
1.将随机产生的80个整数存入数组,按每行10个数输出到窗体或文本框中。
2.偶数和奇数也分别存入数组,将排好序的偶数和奇数分别输出到窗体或两个文本框中。
3.用Sub子过程或Function函数过程判断随机整数是否为素数。
4.将素数按每行10个数在窗体或文本框中输出。
5.将素数的个数及求和结果输出到窗体或文本框中。
6.界面和属性由学生自行设计和设置。
(四)界面设计和属性设置
(五)程序流程图
(六)预编程序代码
实验报告成绩: 指导教师审核(签名): 年 月 日
实验报告
一、实验目的
学会综合运用选择结构、循环结构、数组和过程进行程序设计的方法。
二、实验内容
利用随机函数产生80个10~99之间的随机整数,将其中的偶数按由小到大的顺序排列并输出,将奇数按由大到小的顺序排列并输出;在产生的80个随机整数中,找出其中的素数,并将这些素数求和。
三、实验要求
1.将随机产生的80个整数存入数组,按每行10个数输出到窗体或文本框中。
2.偶数和奇数也分别存入数组,将排好序的偶数和奇数分别输出到窗体或两个文本框中。
3.用Sub子过程或Function函数过程判断随机整数是否为素数。
4.将素数按每行10个数在窗体或文本框中输出。
5.将素数的个数及求和结果输出到窗体或文本框中。
6.界面和属性由学生自行设计和设置(界面设计要合理、美观,属性设置用表格完成,包括对象名、属性名和属性值)。
四、界面设计和属性设置
五、程序流程图
六、源程序代码
Private Sub Command1_Click()
For i = 1 To 80
a(i) = Int(Rnd() * 80 + 10)
Text1.Text = Text1.Text & Str(a(i))
If i Mod 10 = 0 Then Text1.Text = Text1.Text & vbCrLf
Next i
End Sub
Private Sub Command2_Click()
Dim b() As Integer
k = 0
ReDim b(100) As Integer
For i = 1 To 80
If a(i) Mod 2 = 0 Then
k = k + 1: b(k) = a(i)
End If
Next i
ReDim Preserve b(k)
For i = 1 To k - 1
For j = i + 1 To k
If b(i) > b(j) Then
t = b(i): b(i) = b(j): b(j) = t
End If
Next j
Next i
For i = 1 To k
Text2.Text = Text2.Text & Str(b(i))
If i Mod 10 = 0 Then Text2.Text = Text2.Text & vbCrLf
Next i
End Sub
Private Sub Command3_Click()
Dim c() As Integer
h = 0
ReDim c(100) As Integer
For i = 1 To 80
If a(i) Mod 2 = 1 Then
h = h + 1: c(h) = a(i)
End If
Next i
ReDim Preserve c(h)
For i = 1 To h - 1
For j = i + 1 To h
If c(i) < c(j) Then
t = c(i): c(i) = c(j): c(j) = t
End If
Next j
Next i
For i = 1 To h
Text3.Text = Text3.Text & Str(c(i))
If i Mod 10 = 0 Then Text3.Text = Text3.Text & vbCrLf
Next i
End Sub
Function sushu(m As Integer) As Boolean
Dim k As Integer, f As Boolean
f = True
For k = 2 To m - 1
If m Mod k = 0 Then
f = False
End If
Next k
sushu = f
End Function
Private Sub Command4_Click()
For i = 1 To 80
If sushu(a(i)) Then
Text4.Text = Text4.Text & Str(a(i))
k = 1 + k
If k Mod 10 = 0 Then Text4.Text = Text4.Text & vbCrLf
End If
Next i
Text6.Text = k
For j = 1 To k
s = s + a(j)
Next j
Text5.Text = s
End Sub
七、调试和运行结果
错误程序:
For i = 1 To k
Text2.Text = b(i)
If i Mod 10 = 0 Then print
Next i
调试后:
For i = 1 To k
Text2.Text = Text2.Text & Str(b(i))
If i Mod 10 = 0 Then Text2.Text = Text2.Text & vbCrLf
Next i
最后运行:
八、实验中存在的问题
1,公式基本上记不住,只能查课本才能继续操作。
2,像换行的时候,我没能掌握其要领,不能正确的换行。
3,对于文本框进行赋值时,没有像普通赋值那样简单,应该先转换为字符串的形式,然后将前一次的计算结果储存,最后在将所有的数据连接起来,才可以完成对文本框的赋值。
4,在进行窗体美化的时候,不认识各个属性名是什么意思,以至于操作有很大的困难。
九、体会和思考
在实验的过程中,我发现自己有很多老师讲过的程序,各种控件等VB技术没有很好的掌握,以至于我只能一边看书复习着,一边进行着实验,效率很低,我明白了理论和实践是有很大的差距的,在实验中,我学到了很多课本上没有重点讲述的知识,最终看见自己的成果非常地开心。希望以后能多进行一些实验,让我们自己动手,更好的理解和掌握知识。
通过这次实验,我已经深刻地认识到了自己的不足,我会好好利用课余时间,熟练VB技术,希望自己的技能更上一层楼!
最后很感谢那些无私教导我的老师,老师,您辛苦了!
《高级语言程序设计(VB)》复习提纲
第一章 Visual Basic程序设计概述
1. VB程序设计的主要特点是:面向对象的可视化设计和事件驱动编程机制
2. VB集成开发环境
[例1-1]. 在VB编程状态下,双击窗体中的对象后将显示的窗口是 。
A) 项目(工程)窗口 B) 工具箱 C) 代码窗口 D) 属性窗口
[例1-2].在设计阶段,要选定窗体上的多个控件,可以按住 键同时单击各个控件。
A) Shift B) Tab C) Alt D) Enter
第二章 VB简单的程序设计
1. Visual Basic是一种面向对象的程序设计语言,构成对象的三要素是:属性、方法、事件
[例2-1]. 下面4项中不属于面对对象系统三要素的是 。
A.变量 B.事件 C.属性 D.方法
2. 基本控件和窗体
? 标签 Label:用于显示文本(输出)信息,不能作为输入信息的界面。
常用属性:Caption
[例2-2]. 关于标签控件,以下叙述中正确的是 。
A) 标签控件显示的内容由Caption属性决定,但运行时不能改变其内容。
B) 标签控件显示的内容由Caption属性决定,且运行时仍可以改变其内容。
C) 标签控件显示的内容由Text属性决定,但运行时不能改变其内容。
D) 标签控件显示的内容由Text属性决定,且运行时仍可以改变其内容。
? 文本框TextBox: 是一个文本编辑区域,可在该区域输入,编辑和显示正文内容。 常用属性:Text,Locked, Enabled
常用方法: SetFocus是把光标移到指定的文本框对象中。
[例2-3]. 为了把焦点移到某个指定的控件,所使用的方法是 。
A.SetFocus B.Visible C.Refresh D.GetFocus
? 命令按钮CommandButton: 接受用户输入的命令。
常用属性: Caption ,Defalut,Cancel
常用事件:Click
设置键盘访键:在Caption属性的某个英文字母前加 “&”符号
? 窗体:
常用属性: Caption 常用方法:Print
[例2-4].要求改变窗体的标题时,应当在属性窗口中改变的属性是 。
3. 工程的组成: 项目文件:.vbp 窗体文件: .frm 模块文件:.bas
[例2-5]. Visual Basic规定工程(项目)文件的扩展名是 。
A).for B).frm C).vbp D).bas
1
第三章 VB语言基础
1.编码规则:
(1) 一行可书写几句语句,之间用冒号分隔;
(2) 一句语句可分若干行书写,用续行符 空格+_ 连接一行<=255个字符;
(3) 注释 Rem 或‘(单引号)
[例3-1].在Visual Basic代码中,将多个语句合并在一行上的并行符是 。
A)撇号(’ ) B)冒号(:) C)感叹号(!) D)问号(?)
2. 常用数据类型:
Integer %, Long &, Single !, Double #
String $, Date, Boolean
[例3-2]. 使用变量x存放数据3.1415926, 应该将x声明为 类型。
A)Single B) Double C) Long D) Currency
3. 常量和变量
常量:直接变量和符号常量
(1) 字符串常量以“ 号作为起始界符;
(2) 日期时间常量以 # 号作为起始界符;
(3) 逻辑常量:True、False
(4) 符号常量的定义:Const PI=3.14
变量命名规则:
(1). 以字母或汉字开头,后可跟汉字、字母、数字或下划线组成;
(2). 长度小于等于255个字符;
(3). 不能使用VB中的关键字;
[例3-3].下列可作为Visual Basic变量名的是 。
A)A#A B)4A C)?xy D)constA
4. 运算符种类: 算术运算符、字符串运算符、关系运算符、逻辑运算符
5.算术运算符:^ - * / \ mod + -
[例3-4]. 表达式4+5 \ 6 * 7 / 8 Mod 9 的值是
A) 4 B) 5 C) 6 D) 7
6. 字符串运算符: & +
7. 关系运算符: > >= < <= <> =
8. 逻辑运算符: And Or Not
[例3-5].表示条件“X是大于等于5,且小于95的数”的条件表达式是 。
A) 5<=X<95 B) 5<=X, X<95 C) X>=5 and X<95 D) X>=5 and <95
[例3-6].以下关系表达式中,其值为False的是 。
A) "ABC">"AbC" B) "the"<>"they" C) "VISUAL"=UCase("Visual") D) "Integer">"Int"
[例3-7]. 设x=4, y=8, z=7 ,以下表达式的值的是
x<y And (Not y>z ) Or z<x
A) 1 B) -1 C) True D) False
[例3-8]. 设a=10,b=5,c =1,执行语句Print a > b > c后,窗体上显示的是
2
A)True B)False C)1 D)出错信息
9. 表达式中运算符的优先级:
算术运算符>字符运算符>关系运算符>逻辑运算
10.常用内部函数:
算术函数: Rnd,Int,Sqr,Abs
字符串函数:Left,Right,Mid,Len,String,InStr
日期时间函数:Date, Time, Year,Month,Day
其它函数:Val, Format
[例3-9]. 在窗体上画一个命令按钮,其名称为Command1,然后编写如下事件过程:
Private Sub Command1_Click()
a = 12345
Print Format$(a, "000.00")
End Sub
程序运行后,单击命令按钮,窗体上显示的是
A) 123.45 B) 12345.00 C) 12345 D)00123.45
[例3-10]. 执行语句s=Len(Mid("VisualBasic",1,6))后,s的值是 。
A) Visual B) Basic C) 6 D) 11
[例3-11]. 写一个产生一个大于等于50,且小于等于100随机整数的表达式。
X=Int(Rod*36+1)
[例3-12]. N是一个个位不等于零二位整数,写一个表达式将N的个位与十位交换。
[例3-13]. 设有如下程序段:
a$=”BeijingShanghai”
b$=Mid(a$,InStr(a$,”g”)+1)
执行上面的程序段后,变量b$的值为 。
[例3-14]. 与数学表达式Cos2(a+b)/(3×x)+5 对应的Visual Basic表达式是
第四章 基本的控制结构
1. 结构化程序设计的三种基本结构: 顺序结构、选择结构、循环结构
2.赋值语句格式:变量名=表达式
3. 与用户交互函数和过程:
InputBox函数、MsgBox函数和MsgBox过程
[例4-1]. 执行如下语句:
a = InputBox("Today", "Tomorrow", "Yesterday")
将显示一个输入对话框,在对话框的输入区中显示的信息是 。
A)Today B)Tomorrow C)Yesterday D)Day before yesterday
[例4-2]. 在窗体上画一个命令按钮,名称为Command1。单击命令按钮时,执行如下事件过程:
Private Sub Command1_Click()
a$ = "software and hardware"
b$ = Right(a$, 8)
c$ = Mid(a$, 1, 8)
3
MsgBox a$, , b$, c$, 1
End Sub
则在弹出的信息框的标题栏中显示的信息是 。
A)software and hardware B)software C)hardware D)1
[例4-3]. 以下关于MsgBox的叙述中,错误的是
A)MsgBox函数返回的一个整数
B)通过MsgBox函数可以设置信息框中的图标和按钮的类型
C)MsgBox语句没有返回值
D)MsgBox函数的第二个参数是一个整数,该参数只能确定对话框中显示的按钮数量
4.选 择 结 构:
4.1.If 语句
If?Then语句(单分支结构)
If?Then?Else语句(双分支结构)
If?Then?ElseIf语句(多分支结构)
4.2.Select Case多分支语句
Select Case 测试表达式
Case 表达式表1
语句块1
Case表达式表1
语句块2
?
Case Else
语句块n
End Select
[例4-4]. 在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:
Private Sub Command1_Click()
X= Val(InputBox (“Input”))
Select Case X
Case 1,3
Print “分支1”
Case Is > 4
Print “分支2”
Case Else
Print “Else分支”
End Select
End Sub
程序运行后,如果在输入对话框中输入2,则窗体上显示的是
A)分支1 B)分支2 C)Else分支 D)程序出错
4.3. 条件函数:IIf函数
IIf函数形式是:
IIf(表达式,当表达式为True时的值,当表达式为False时的值)
4
5. 循 环 结 构
? For ? Next 循环语句
[例4-5].执行下面的程序段后,变量S的值为 【 75 】 。
s=0
For k=10 To 50 Step 15
s=s+k
Next k
If k>50 Then
s=s+k
Else
s=s-k
End If
[例4-6].执行下面的程序段后,变量S的值为 【 】 。
S = 5
For i = 2.6 To 4.9 Step 0.6
S = S + 1
Next I
[例4-7].执行下面的程序段后,i的值为【 】 ,s的值为【 】。
s = 2
For i = 3.2 To 4.9 Step 0.8
s = s + 1
Next i
[例4-8]. 在窗体上画一个名称为Command1的命令按钮,一个名称为Label1的标签,然后编写如下事件过程:
Private Sub Command1_Click()
s = 0
For i = 1 To 15
x = 2 * i - 1
If x Mod 3 = 0 Then s = s + 1
Next i
Label1.Caption = s
End Sub
程序运行后,单击命令按钮,则标签中显示的内容是 。
A)1 B)5 C)27 D)45
[例4-9]. 设有如下程序段:
x = 2
For i = 1 To 10 Step 2
x = x + i
Next
运行以上程序后,x的值是
A)26 B)27 C)38 D)57
? Do?Loop循环语句
[例4-10]. 在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:
Private Sub Command1_Click()
5
Dim num As Integer
num = 1
Do Until num > 6
Print num;
num = num + 2.4
Loop
End Sub
程序运行后,单击命令按钮,则窗体上显示的内容是 。
A)1 3.4 5.8 B)1 3 5 C)1 4 7 D)无数据输出
[例4-11]. 在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:
Private Sub Command1_Click()
Dim a As Integer, s As Integer
a = 8
s = 1
Do
s = s + a
a = a-1
Loop While a <= 0
Print s; a
End Sub
程序运行后,单击命令按钮,则窗体上显示的内容是
A) 7 9 B) 34 0 C) 9 7 D)死循环
? 循环嵌套
[例4-12].阅读下面的程序段:
For i=1 To 3
For j=1 To i
For k=j To 3
a=a+1
Next k
Next j
Next i
执行上面的三重循环后,a 的值为 。
A) 3 B) 9 C) 14 D)
6. Exit语句
多种形式: Exit For、Exit Do、Exit Sub、Exit Function等。
作用:退出某种控制结构的执行。
7. End语句
多种形式: End、 End If、 End Select、 End Sub、 End Function、
作用:End结束一个程序的运行;其余表示某个结构的结束,与对应的结构语句配对出现。 6
第五章 常 用 控 件
1. 单选钮和复选框
Caption属性:文本标题
Value属性 单选钮(逻辑型) 检查框(数值型)
True:选定 0--Unchecked:未被选定
False:未选定 1--Checked:选定
2--Grayed:灰色,禁止选择
[例5-1]. 复选框是否被选中可以通过其以下属性的值来确定 。
A) True B) False C) Value D) Cancel
[例5-2].下面的_______ 控件不具备Caption属性。
A)标签框 B)单选按钮 C)命令按钮 D)文本框
2. 框架(Frame) Caption属性:框架标题
3. 列表框和组合框
属性: List ListCount ListIndex Text
方法: Clear Additem RemoveItem
[例5-3]. Visual Basic中有一种控件组合了文本框和列表框的特性,这种控件是组合框 。
[例5-4]. 设组合框Combo1中有3个项目,则以下能删除最后一项的语句是
A)Combo1.RemoveItem Text
B)Combo1.RemoveItem 2
C)Combo1.RemoveItem 3
D)Combo1.RemoveItem Combo1.Listcount
[例5-5].在窗体上画一个列表框、一个命令按钮和一个标签,其名称
分别为List1、Command1和Label1,通过属性窗口把列表框中的
项目设置为:“第一个项目”、“第二个项目”、“第三个项目”、“第
四个项目”。程序运行后,在列表框中选择一个项目,然后单击命
令按钮,即可将所选择的项目删除,并在标签中显示列表框当前
的项目数,运行情况如图所示(选择“第三个项目”的情况)。下
面是实现按上述功能的程序,请填空。
Private Sub Command1 _Click()
If List1.ListIndex >=
Label1.Caption =
Else
MsgBox "请选择要删除的项目"
End IF
End Sub
4. 滚动条
属性:Max:最大值; Min:最小值; Value: 滑块所处位置所代表的值。
事件: Scroll:拖动滑块时会触发Scroll事件。
Change:Value属性改变时触发Change事件
[例5-6]. 在程序运行期间,如果拖动滚动条上的滚动块,则触发的滚动条事件是 。
A) Move B) Change C) Scroll
D) GetFocus
7
5. 时钟(Timer)
时钟控件以Interval为时间间隔产生 Timer事件。
属性:
Interval属性: 单位:ms(0.001s),0.5秒是500,Interval=0:屏蔽计时器。
Enabled属性: True:有效计时;False:停止时钟工作
事件: Timer
[例5-7]. 将计时器Timer1的时间间隔设置为1秒钟的正确语句是 。
A) Timer1.Value=1000 B) Timer1.Time =1000
C) Timer1.SmallChange=1000 D) Timer1.Interval=1000
[例5-8]. 在窗体上画一个名称为Timer1的计时器和一个名称为Label1的标签。当运行程序后,将在标签中显示当前时间的数字时钟(包括 时:分:秒)。请在 【 】 处填入适当的内容,将程序补充完整。
Private Sub Form_Load()
Timer1.Interval=1000
End Sub
Private Sub Timer1_Timer()
【 】
End Sub
[例5-9].下列各组控件都具有Caption属性的是 。
A)窗体、标签 B)标签、定时器 C)窗体、文本框 D)文本框、定时器
第六章 数组
1. 静态数组及声明: 下标的下界和上界必须是常量。
下界缺省为0,也可在重新定义数组的下界。例如:
Option Base 1
[例6-1]. 用下面语句定义的数组的元素个数是 。
Dim A (-3 To 5) As Integer
A) 6 B) 7 C) 8 D) 9
[例6-2]. 语句DIM A(3,4,5)中定义的数组有多少个元素 。
A.345 B.12 C.60 D.120
2. 数组操作
[例6-3]. 在窗体上画一个命令按钮,然后编写如下程序:
Private Sub Command1_Click()
Dim a(10,10) As Integer
For i=2 To 5
For j=5 To 7
a(i,j)=i+j
Next j
Next i
Print a(2,5)+a(3,6)+a(4,7)
End Sub
程序运行后单击命令按钮,输出结果是_______。
A)24 B) 27 C)30 D)32
8
[例6-4]. 在窗体上面画一个命令按钮,然后编写如下事件过程:
Option Base 1
Private Sub Commandl_Click()
Dim a
a = Array(1,2,3,4)
j = 1
For i = 4 To 1 Step -1
s = s + a(i)*j
j =j*10
Next i
Print s
End Sub
运行上面的程序,单击命令按钮,其输出结果是 。
A) 4321 B) 12 C) 34 D) 1234
[例6-5]. 设有程序:
Option Base 1
Private Sub Command1_Click()
Dim arr1, Max as Integer
arr1 = Array(12, 435, 76, 24, 78, 54, 866, 43)
For i = 1 To 8
Next i
Print "最大值是: "; Max
End Sub
以上程序的功能是:用Array函数建立一个含有8个元素的数组,然后查找并输出该
数组中元素的最大值。请填空。
[例6-6]. 在窗体上画一个名称为 Text1 的文本框和一个名称为 Command1 的命令按钮,
然后编写如下事件过程:
Private Sub Command1_Click()
Dim array1(10, 10) As Integer
Dim i As Integer, 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) 15 B) 14 C) 13 D) 12
[例6-7]. 在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:
Option Base 1
Private Sub Command1_Click()
Dim a
a=Array(1,2,3,4,5)
9
For i = 1 To UBound(a)
a(i) = a(i) +i –1
Next
Print a(3)
End Sub
程序运行后,单击命令按钮,则在窗体上显示的内容是
A)4 B) 5 C) 6 D) 7
[例6-8].阅读程序
Option Base 1
Private Sub Form_Click()
Dim arr,Sum
Sum = 0
arr = Array (1,3,5,7,9,11,13,15,17,19)
For i = 1 To 10
If arr(i) / 3=arr(i) \ 3 Then
Sum = Sum+ arr(i)
End If
Next i
Print Sum
End Sub
程序运行后,单击窗口,输出结果为
A)13 B)14 C)27 D)15
第七章 过程
1.函数过程的定义和调用:以Function保留字开始的为函数过程
2.子过程的定义和调用:Sub保留字开始的为子过程
3. 参数传递: 传址与传值
传址:形参得到的是实参的地址,当形参值的改变同时也改变实参的值。 传值:形参得到的是实参的值,形参值的改变不会影响实参的值。 数组作为参数:传地址
4. 变量、过程的作用域
5.变量的生存期:动态变量和静态变量
[例7-1].在以下事件过程中,Private表示 。
Private Sub lblAbc_Change()
??
End Sub
A)此过程可以被任何其它过程调用。
B)此过程只可以被本窗体模块中的其它过程调用。
C)此过程不可以被任何其它过程调用。
D)此过程只可以被本工程中的其它过程调用
[例7-2]. 在窗体上画一个名称为Command1的命令按钮,并编写如下程序:
Private Sub Command1_Click()
Dim x As Integer, y As Integer
x = 10
y = 5
10
Call f1(x,y)
Print x,y
End Sub
Private Sub f1(ByRef x1 As Integer ,ByVal y1 As Integer)
x1 = x1 + 2
y1 = y1 +2
End Sub
程序运行后,单击命令按钮,在窗体上显示的内容是 。
A) 10 5 B)12 5 C) 10 7 D)12 7
[例7-3]. 假设已通过下列Sub语句定义了MySub过程。若要调用该过程,可以采用 语句。 Sub MySub(x As Integer)
A) s=MySub(2) B) Mysub 32000 C) Print Mysub(120) D) Call Mysub 40000
[例7-4].以下关于函数过程的叙述中,正确的是
A) 函数过程形参的类型与函数返回值的类型没有关系
B) 在函数过程中,过程的返回值可以有多个
C) 当数组作为函数过程的参数时,既能以传值方式传递,也能以传址方式传递
D) 如果不指明函数过程参数的类型,则该参数没有数据类型
[例7-5].设有如下通用过程:
Public Function f(x As Integer)
Dim y As Integer
x = 20
y = 2
f = x * y
End Function
在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:
Private Sub Command1_Click()
Static x As Integer
x = 10
y=5
y = f(x)
Print x; y
End Sub
程序运行后,如果单击命令按钮,则在窗体上显示的内容是
A)10 5 B)20 5 C)20 40 D)10 40
[例7-6]. 设有如下通用过程:
Public Sub Fun(a(), ByVal x As Integer)
For i = 1 To 5
x = x + a(i)
Next
End Sub
在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写 如下的事件过程:
11
Private Sub Command1_Click()
Dim arr(5) As Variant
For i = 1 To 5
arr(i) = i
Next
n = 10
Call Fun(arr(), n)
Text1.Text = n
End Sub
程序运行后,单击命令按钮,则在文本框中显示的内容是
A)10 B)15 C)25 D)24
[例7-7]. 在窗体上画两个名称分别为Commandd1和
Command2、标题分别为“初始化”和“求和”的命令按钮。
程序运行后,如果单击“初始化”命令按钮,则对数组a的
各元素赋值;如果单击“求和”命令按钮,则求出数组a的
各元素之和,并在文本框中显示出来,如图所示。请填空。
Option Base1
Dim a(3,2) As Integer
Private Sub Command1_Click()
For i = 1 To 3
For j = 1 To 2
Next j
Next i
End Sub
Private Sub Command2_Click()
For j = 1 To 3
For i = 1 To 2
Next i
Next j
End Sub
[例7-8]. 在窗口上画一个名称为Command1的命令按钮,然后编写如下事件过程:
Private Sub Command1_Click()
Static x As Integer
Cls
For i = 1 To 2
y = y + x
x = x + 2
Next
Print x, y
End Sub
程序运行后,连续三次单击Command1按钮后,窗体上显示的是
A) 4 2 B) 12 18 C) 12 30 D) 4 6
12
高级语言程序设计实验报告班级学号姓名成绩实验2数据类型运算符和表达式一实验目的1理解语言中各种数据类型的意义掌握各种数据类型的定义…
高级语言程序设计实验报告实验一选择结构程序设计班级179学号20xx179姓名一实验目的1熟悉VC60编程环境2进一步熟悉用VC6…
重庆交通大学信息科学与工程学院综合性班级学号实验项目名称实验项目性质实验所属课程实验室中心指导教师实验完成时间设计性实验报告专业级…
C语言程序设计学校:中国地址大学学院:工程学院班级序号:学号:姓名:指导老师:C语言程序设计报告一、C语言课程设计的目的:高级语言…
创新源于实践高级语言程序设计课程实验教学手册高级语言程序设计课程组实验手册使用及要求实验操作是教学过程中理论联系实际的重要环节而实…
江西科技师范大学实验报告课程系别班级学号姓名报告规格一、实验目的二、实验原理三、实验仪器四、实验方法及步骤五、实验记录及数据处理六…
上海立信会计学院本科实验报告班级学号姓名指导教师系部专业实验时间实验5数组一实验目的1掌握数组的声明数组元素的引用2掌握固定长度数…