如题,代码如下:
Option   Explicit   
    
  Dim   i,   j   
  Dim   min,   max,   dimension,   numCount   
  Dim   dimen()   
  dim   src()   
  Dim   rst()   
    
  dimension   =   Request.Forms("txtDimension")       '没个组合数字的个数   
  numCount   =   Request.Forms("txtNumCount")       '数字的个数   
  min   =   1                   '最小值   
  max   =   numCount     '最大值   
    
  '取得参加组合的数字   
  redim   src(numCount)   
  for   i=1   to   numCount   
          src(i)=Request.Forms("txtNum"   &   i)   
  next   
    
  '从小到大排序   
  for   i=1   to   numCount-1   
        for   j=i+1   to   numCount   
                if   src(i)>scr(j)   then   
                      src(0)=src(i)   
                      src(i)=src(j)   
                      src(j)=src(0)   
                end   if   
        next   j   
  next   
    
    
  ReDim   dimen(dimension   -   1)             '初始各维的当前值   
  For   i   =   0   To   dimension   -   1   
          dimen(i)   =   min   
  Next   i   
    
  ReDim   rst(0)                                         '初始结果数组   
  Do   
          If   Not   AddArray(dimen,   min,   max,   dimension)   Then   Exit   Do   
          ReDim   Preserve   rst(UBound(rst)   +   1)   
          rst(UBound(rst))   =   replacr2Src(dimen)   
  Loop   
    
  '输出结果   
  For   i   =   1   To   UBound(rst)   
            Response.Write   rst(i)   &   "<BR>"   
  Next   
    
  Private   Function   AddArray(ByRef   theArray,   ByVal   lngMin,   ByVal   lngMax,   ByVal   lngDimen)   
          Dim   i,   j,   currentDimen   
          currentDimen   =   0   
          For   i   =   lngDimen   -   1   To   0   Step   -1   
                  If   theArray(i)   <   lngMax   Then   
                          theArray(i)   =   theArray(i)   +   1   
                            
                          If   currentDimen   >   0   Then   
                          '去掉重复的值   
                                  currentDimen   =   lngDimen   -   currentDimen   
                                  For   j   =   currentDimen   To   lngDimen   -   1   
                                          theArray(j)   =   theArray(j   -   1)   
                                  Next   
                                  If   theArray(lngDimen   -   1)   =   theArray(0)   Then   theArray(lngDimen   -   1)   =   theArray(lngDimen   -   1)   +   1   
                                  If   theArray(lngDimen   -   1)   >   lngMax   Then   Exit   For   
                          End   If   
                
                          For   j   =   lngDimen   -   1   To   1   Step   -1   
                                  If   theArray(j)   <=   theArray(j   -   1)   Then   
                                          AddArray   =   AddArray(theArray,   lngMin,   lngMax,   lngDimen)   
                                          Exit   Function   
                                  End   If   
                          Next   
                
                          AddArray   =   True   
                          Exit   Function   
                  Else   
                          currentDimen   =   currentDimen   +   1   
                  End   If   
          Next   
          AddArray   =   False   
  End   Function   
    
  private   function   replacr2Src(byval   theArray)   
  '将组合结果替换成原始数字   
          Dim   
          For   i   =   numCount   to   1   step   -1   
                  for   j=UBound(theArray)-1   to   0   step   -1   
                          if   theArray(j)=i   then   
                                  theArray(j)=src(i)   
                                  exit   for   
                          end   if   
                  next   
          next   
          replacr2Src=Join(theArray,   ",")   
  end   function

解决方案 »

  1.   

    http://labs.developerfusion.co.uk/convert/vb-to-csharp.aspx
    到这个网站转。很简单的。
      

  2.   

    那个网站我看了 ,只有Vb.net转C#的;
    以上代码是老版本VB写的
      

  3.   

    http://labs.developerfusion.co.uk/convert/vb-to-csharp.aspx 
    到这个网站转。很简单的。
    不行的话。那就自己修改吧。
      

  4.   

    VB与C#就是语法上有些不同而已呀
    自己看着写出来,不就可以了吗?
      

  5.   

    先用VS2005打开原VB项目,它会自动改为VB.NET代码,然后再用vb-to-csharp。
      

  6.   

    你先用VB.net把VB6.0的打开转换成VB.Net然后用转换工具转换成C#