VB过程、函数与调用
实验目的
1)了解并掌握过程、函数的基本概念。
2)正确编写过程、函数并灵活调用。
3)理解递归概念。
实验题目
1)设计一个窗体,通过命令按钮操作,用过程与函数两种方式计算N!。窗体界面如图实验六01所示。
图实验六01
2)设计一个窗体,通过命令按钮操作,分别调用阶乘过程与函数计算5个元素中拿3个进行组合的可能次数。
窗体界面如图实验六02所示。
图实验六02
实验背景及准备
1)已学习过程的概念。
2)已学习函数的概念。
3)已了解递归的概念。
实验过程与主要步骤
1)题目一
进入VB,在窗体上放置2个标签、2个文本框、两个命令按钮,改变Caption属性。“计算”按钮中用一个循环
完成N!的运算,根据定义,N!=N*(N-1)*(N-2)*……1。“递归算法”按钮中直接调用N!函数。函数写在通用
程序段中。递归公式N!=N*(N-1)!,即欲求N!,必须先求出(N-1)!。由此,先有1!=1,再反推出2!,3!,……
直到N!。
题目一程序代码如下:
DimnAsInteger
DimpAsInteger
DimkAsInteger
PrivateFunctionjshs(x)AsInteger'定义阶乘函数
Ifx=1Then
jshs=1
El
jshs=x*jshs(x-1)'递归
EndIf
EndFunction
PrivateSubCommand1_Click()
n=Val()
Ifn=0Orn=1Then
p=1
El
p=1
Fork=nTo1Step-1
p=p*k
Next
EndIf
=p
EndSub
PrivateSubCommand2_Click()
n=Val()
=jshs(n)'函数调用
EndSub
PrivateSubForm_Load()
=""
=""
EndSub
2)题目二
进入VB,窗体上放置1个Picture控件,1个文本框,2个命令按钮。改变窗体、命令按钮的标题属性。图片控
件的Picture属性中载入图片文件,其外观如图实验六03所示。
图实验六03
计算N1的过程与函数都编写在通用程序段中。“过程调用”与“函数调用”控件中只写调用的相关命令。
题目二的程序代码如下:
PublicFunctionjcjs(nAsInteger)'定义函数
Ifn=1Then
jcjs=1'函数有返回值
El
jcjs=n*jcjs(n-1)
EndIf
EndFunction
PublicSubjcgc(ByValnAsInteger,ByRefyAsLong)'定义过程。N传值,Y传变量。
DimkAsInteger
DimpAsLong
p=1
Ifn>0Then
Fork=nTo1Step-1
p=p*k
Next
EndIf
y=p'过程无返回值
EndSub
PrivateSubCommand1_Click()
DimyAsLong
m=5
jcgcm,y'过程调用一式
c=y
n=3
Calljcgc(n,y)'过程调用二式
c=c/y
m=5-3
jcgcm,y
c=c/y
=c
EndSub
PrivateSubCommand2_Click()
c=jcjs(5)/jcjs(2)/jcjs(3)'函数调用
=c
EndSub
实验小结
1)一个事件的响应程序,一段写在通用段的程序,或者添加的模块中的程序,只要以Sub…….EndSub括上
的内容,便称为过程。
2)以FuctionEndFuction括上的程序段称为函数。
3)函数有返回值,过程没有。过程通过传地址参数使两个变量具有相同的值。
4)过程与函数调用中实参与形参的个数、类型必须匹配。
本文发布于:2022-11-14 19:04:26,感谢您对本站的认可!
本文链接:http://www.wtabcd.cn/fanwen/fan/88/19398.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |