易截截图软件、单文件、免安装、纯绿色、仅160KB

vb循环

Option Explicit
Dim N As Integer
Private Sub Command1_Click()
    Dim A As Integer, B As Integer
    A = 2: B = 3
    For N = 1 To 6
      If N Mod 2 = 0 Then
          B = Fun(N, A) + A
      Else
          A = Fun(B, N) + B
      End If
    Next N
    Print N, A, B
End Sub
Private Function Fun(X As Integer, Y As Integer) As Integer
    X = Y - 1 + N
    Y = X + Y - N
    Fun = X + Y
End Function

为什么是10  27    9
N不是最大就是6了吗?10是怎么得出来的啊
A,B又是怎么算出来的啊 


因为你的fun是以byref形式,所以当你把N传进去的时候在fun里面对于对于函数值得改变N也随之变化了

其实你可以断点debug下就知道了

Private Function Fun(ByVal X As Integer, ByVal Y As Integer) As Integer
    X = Y - 1 + N
    Y = X + Y - N
    Fun = X + Y
End Function

引用
因为你的fun是以byref形式,所以当你把N传进去的时候在fun里面对于对于函数值得改变N也随之变化了

其实你可以断点debug下就知道了

就是这个原因。
VB中,变量的传递默认是 ByRef 的。




相关问答:

关于ASP.net(vb)播放监控录像的问题

我有厂家做的ASP的监控录像(DVR)的局域网播放的源程序与控件,想要用ASP.net做一个视频回放的程序(利用他的控件)但不知如下去做,望各位指点。
先搞清楚他们的控件是怎么用的,
然后就直接用好了.
不过,如 ......

VB中有无TApplication对应类型

我用Delphi写了一个DLL, DLL里有MDI的子窗体,DLL初始化时 传递调用者的TApplication给DLL, 在Delphi7中调用已经通过,但是不知道在VB中有无TApplication对应类型, 是否能在VB中调用?
你好,用instance不是就可以了&# ......

求教下VB如何给D3D游戏写屏 - VB / API

想在warcraft3里进行写屏操作【如对战平台中的胜负提示信息】,效果就像游戏平台中一样,我试过在一窗口中写入文字,然后一直让窗口强制最前,虽然能实现文字显示,但是文字会不断闪烁,而且有不确定BUG,通过论坛搜 ......

VB 鼠标移动事件

我想在鼠标移至命令按钮上,弹出一个提示框,但不知如何弄,请做个示例

tooltip

谢谢!我是新手,能说得详细些吗?最好有个例子

Command1.ToolTipText="xxx"

我在command中看到这样不能实现 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号