用ASP随机抽取五名学生

来源:百度知道 编辑:UC知道 时间:2024/06/08 13:08:17
假如我班有八名学生,分别是张三、李四、王五、赵六、田七、王八、周九、刘十,
要求:1、用ASP随机显示五位同学的名字,不能重复,五个名字之间用顿号隔开(需四个顿号,最后一位后面不需要);
2、不用数据库;
3、便于扩展(比如说班里可能有三十名学生,可能随机抽取十名);
4、最好是完整源码,复制下来,传上去就能显示。
这个问题应用很广泛,大家可以试一下,写出来可以造福人类!
一楼的你好,如果删除重复的岂不少了一名。

感谢二楼和三楼,答案都正确,这让我为难了,
二楼早两分钟,三楼更简练,
恨百度知道的规则只能采纳一个答案,还是投票吧。

<%
str="张三、李四、王五、赵六、田七、王八、周九、刘十、李三、王二、赵五、田一、王九、周一、刘三"
strArr=split(str,"、")

response.write getName(5,0,ubound(strArr)) '取5个
%>

<%
Function RndNumber(MaxNum,MinNum)
Randomize
RndNumber = int((MaxNum-MinNum+1)*rnd+MinNum)
RndNumber = RndNumber
End Function

Function getName(n,a,b)
if n>b then
getName="错误:数值超出范围"
exit function
end if
dim shu() : Redim shu(n)
flag=false
i=0

while(i<N)
x = RndNumber(b,a)
j = 0
while(j<i)
if shu(j) = x then flag=true
j=j+1
wend
if not flag then
shu(i)=x
i=i+1
else
flag=false
end if
wend

for i=0 to n-1
temp=temp&strArr(shu(i))&"、"
next
getName = left(temp,len(temp)-1)
end function
%>

<%
str1 = "张三、李四、王五、赵六、田七、王八、周九、刘十&