易截截图软件、单文件、免安装、纯绿色、仅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 的。




相关问答:

VB中有无TApplication对应类型

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

请好心人帮我把VB源码转为VB.NET~

希望大家能够帮我下.感谢了..


源码传在大米盘 VB6 的源码 http://www.damipan.com/file/3wNoKLW.html

转为VB.NET源码.

小弟完全是新手 不懂的说.麻烦各位帮忙一下

我的EMAIL是:4452 ......

VB-數據刪除處理

Private Sub Command1_Click(Index As Integer)

Select Case Index 
    Case 3  ’刪除
            Dim YesNo As String
  &nbs ......

如何通过 VB 获得 google 翻译的结果?

从网上找了一个版本,源代码如下:

VB code:
Option Explicit
'Global DefLang As String
Const WebURL As String = "http://translate.google.com/translate_t"
Const SearchString As Strin ......

多个顶点缓存vb的操作

共有4个示例顶点缓存InstanceVB1,InstanceVB2,InstanceVB3,InstanceVB4,它们的值都是通过一个循环进行赋值,请问可以如下操作吗,怎么操作效率最高?

InstanceVB1->Lock(...);
InstanceVB2->Loc ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号