从数组中取出N个不重复的随机数
<%
strid="01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35"
arr_strid=split(strid," ")
function getrand(m,arr)
str=""
n=0
do while true
randomize(timer)
x = cint(rnd*ubound(arr))
if instr(str,arr(x))=0 then
str=str+arr(x)+" "
n=n+1
if n>m then
exit do
end if
end if
loop
place=InStrRev(str," ")
str=Left(str,place-1)
response.Write str
end function
response.Write getrand(5,arr_strid)
%>
上述代码实现的是在数组中随机取5个数并显示出来,运行是正常的。
1. 但我想把getrand(5,arr_strid)先给一个变量,再显示变量,怎么就显示不出来呢!??!
比如把上面代码的最后
response.Write getrand(5,arr_strid)
改成:
all=getrand(5,arr_strid)
response.write "选择结果:" & all
这样 选择结果 后面就是一个空串!
2. 上述代码中的
response.Write str
如果去掉,整个函数就不显示,我难道就不能在函数外显示吗?
.............自己搞定了