用VB怎么定义一个函数

比如:用VB编好了n的阶乘,但是我想多次使用;定义为f(n);f(3)就等于3的阶乘、f(6)就等于6的阶乘;这样用起来方便些,要怎样编?... 比如:用VB编好了n的阶乘,但是我想多次使用;定义为f(n);f(3)就等于3的阶乘、f(6)就等于6的阶乘;这样用起来方便些,要怎样编? 展开
 我来答
未来主场dA
推荐于2017-09-22 · TA获得超过216个赞
知道小有建树答主
回答量:136
采纳率:0%
帮助的人:175万
展开全部
Dim t As Long
_________________________________________

Public Function j(n As Integer) As Long

t = 1
For i = 1 To n
t = t * i
Next i

j = t

End Function
_______________________________________
Private Sub Command1_Click()
Text1.Text = j(8) '这里就可以调用函数了
End Sub
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
赫博牵恬欣
2020-08-08 · TA获得超过1120个赞
知道小有建树答主
回答量:1815
采纳率:100%
帮助的人:9.3万
展开全部
先说函数中的instr(1,
s,
"
0")
意思是查找字符串"
0"在变量s中出现的第一个位置,这儿的1可以不用写,意思是从第一个字符开始查起。你要看清,这儿的"
0"是有个半角空格的。
ss
=
mid(s,
1,
i)
&
change
意思是获取从变量s的第1位开始到变量i的位置上的字符串,并加上后面的change变量。
你的sub中text1.text我不知道你输入了什么字符,但这里面我敢肯定是没有"
0"相关的字眼,因此在instr(1,
s,
"
0")时就会出现错误,它的值为0,到了后面mid(s,
1,
i)
,怎么会从1到0的字符呢?这本身就是错误的,所以不会输出什么
然后加上后面的change,也就是你的c,也就是52了
你在text1.text中输入“abcdefg
0
asdf”试试,就不会只输出52了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
尼欧赵
2008-11-08 · TA获得超过823个赞
知道大有可为答主
回答量:1597
采纳率:0%
帮助的人:1214万
展开全部
Private Function f(Dim n As Integer) as Integer
if n=0 then
f=1
else
for i=1 to n
t=t*i
next
f=t
endif
End Function

调用的时候如下,x等于24
x=f(4)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hy19060
2008-11-08
知道答主
回答量:21
采纳率:0%
帮助的人:0
展开全部
Public Function fjiecheng(ByVal n As Integer)
Dim i, fn As Long
fn = 1
For i = 1 To n
fn = i * fn
Next
Return fn
End Function
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hwd0312
推荐于2017-10-06 · TA获得超过4336个赞
知道小有建树答主
回答量:1043
采纳率:100%
帮助的人:169万
展开全部
实例:
Private Sub xs() ‘自定义了一个过程 xs ()
dim a
dim b
a= "早上好"
b="先生"
Print a
print b
End Sub

Private Sub Form_Click()
call xs() ' 调用自己定义的过程
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式