| 
                         ASP生成随机数: 
复制代码 代码如下: Randomize '纯随机,不重复  Response.write Int((999999999 * Rnd) + 111111111) '生成111111111到999999999之间随机数
  
ASP不重复随机数:
  方法一: 已测
  使用的时候需要注意里面的分割字符串的字符。 复制代码 代码如下:  lt;%  '生成的是一个不重复的数组  Function GetRnd(lowerNum,upperNum)  Dim unit,RndNum,Fun_X  unit = upperNum - lowerNum  Redim MyArray(unit)  For Fun_I=0 To unit  myArray(Fun_I)= lowerNum + Fun_I  Next  For Fun_I=0 To round(unit)  RndNum = getRndNumber(Fun_I,unit)  Fun_X = myArray(RndNum)  myArray(RndNum)=myArray(Fun_I)  myArray(Fun_I)=Fun_X  Next  GetRnd = Join(myArray)  End Function  Function getRndNumber(lowerbound,upperbound)  Randomize  getRndNumber=Int((upperbound-lowerbound+1)*Rnd+lowerbound)  End Function  Response.Write GetRnd(1,1000)  %gt; 
 
  方法二: 
复制代码 代码如下: lt;%  function rndarray(istart,iend,sum)  dim arrayid(),i,j,blnre,temp,iloop,eloop  redim arrayid(sum-1)  i=0  iloop=0  eloop=0  blnre=false  randomize  do while ilt;sum  temp=int(rnd*(iend-istart+1)+istart)  if i=0 then  arrayid(0)=temp  i=i+1  iloop=iloop+1  else  for j=0 to i-1  if arrayid(j)=temp then  blnre=true  iloop=iloop+1  exit for'这一句很重要,防止多余的循环  else  iloop=iloop+1  end if  next  nbsp;if blnre=false then  nbsp;arrayid(i)=temp  nbsp;i=i+1  nbsp;else  nbsp;blnre=false  nbsp;end if  end if  loop  rndarray=join(arrayid)  end function  response.write rndarray(1,5,1) '开始数字,结尾数字,生成多少个  %gt;
                          (编辑:滁州站长网) 
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! 
                     |