asp如何取一个数字字符串中的最大数
本人是初学ASP,就是有如“3,2,9,5,8”这样一个字符串,如何取得其中的最大数,提示一下,有可能字符串里只有一个数...
本人是初学ASP,就是有如“3,2,9,5,8”这样一个字符串,如何取得其中的最大数,提示一下,有可能字符串里只有一个数
展开
展开全部
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%
dim num
num = "3,2,9,5,8"
num = Split(num,",") '将字符串拆分为数组
response.Write Max(num)
'冒泡排序
Function Max(Arr)
If not IsArray(Arr) then Exit Function '如果非数组则跳出
dim Bound,isOk,i,t
Bound = UBound(Arr) '数组最大角标
isOk = False '标记是否有排序变化
Do while Bound > 0 and not isOk
isOk = True '如果比较后没有发生排序变化,说明排序已经正确,isOk值为True,直接跳出循环
For i = 0 to Bound - 1 '相邻两元素比较,小的往后排
If Arr(i) < Arr(i + 1) then
t = Arr(i)
Arr(i) = Arr(i + 1)
Arr(i+1) = t
isOk = False
End If
Next
Bound = Bound - 1 '循环一轮后,最小的排到最右了,再比较左(Bound-1)个元素,陆续把最小的排到最右
Loop
'得到Arr数组是由大到小排序
Max = Arr(0) '这里可以返回最大最小的都可以
End Function
'如果只要最大的,可以一次循环,只把最大冒泡出来
%>
<%
dim num
num = "3,2,9,5,8"
num = Split(num,",") '将字符串拆分为数组
response.Write Max(num)
'冒泡排序
Function Max(Arr)
If not IsArray(Arr) then Exit Function '如果非数组则跳出
dim Bound,isOk,i,t
Bound = UBound(Arr) '数组最大角标
isOk = False '标记是否有排序变化
Do while Bound > 0 and not isOk
isOk = True '如果比较后没有发生排序变化,说明排序已经正确,isOk值为True,直接跳出循环
For i = 0 to Bound - 1 '相邻两元素比较,小的往后排
If Arr(i) < Arr(i + 1) then
t = Arr(i)
Arr(i) = Arr(i + 1)
Arr(i+1) = t
isOk = False
End If
Next
Bound = Bound - 1 '循环一轮后,最小的排到最右了,再比较左(Bound-1)个元素,陆续把最小的排到最右
Loop
'得到Arr数组是由大到小排序
Max = Arr(0) '这里可以返回最大最小的都可以
End Function
'如果只要最大的,可以一次循环,只把最大冒泡出来
%>
展开全部
Function BIJIAO(TempArray)
TempArray = Split(TempArray,",")
Temp = TempArray(0)
For i=1 To UBound(TempArray)
If TempArray(i)>Temp Then
Temp = TempArray(i)
End If
Next
BIJIAO = Temp
End Function
Response.Write BIJIAO("3,2,9,5,8")
简单的小算法
TempArray = Split(TempArray,",")
Temp = TempArray(0)
For i=1 To UBound(TempArray)
If TempArray(i)>Temp Then
Temp = TempArray(i)
End If
Next
BIJIAO = Temp
End Function
Response.Write BIJIAO("3,2,9,5,8")
简单的小算法
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询