数组问题

YUYAO2 2008-04-21 09:40:40
我想求出一个数组中有几个不同的数
下面是我写的程序
可是得不出我要的结果
麻烦大家给我看看
谢谢了
Dim MyArray,n,j,i,m

MyArray = Array(1,1,1,1,1,1,1)
n= UBound(MyArray)+1 'n 为数组的长度
for j=1 To UBound(MyArray)
For i=0 To j-1
If MyArray(j)=MyArray(i) Then
m=n-1 '出现一样长度就减1
End if
Next
next
response.write m
response.end
...全文
44 点赞 收藏 9
写回复
9 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
-晴天 2008-04-21
你的帖子不是求数组里有几个不同的元素吗?
你可以自己改变array里的值试试.
回复
YUYAO2 2008-04-21
还是谢谢你
可我比较的不是相邻两个数是否相等
回复
-晴天 2008-04-21
<%
Dim MyArray,n,j,i,m

MyArray = Array(1,1,1,1,1,1,1)
i=1
n=ubound(myarray)
do while i < n
j=i+1
do while j <= n
if myarray(i)=myarray(j) then
for m=j to n-1
myarray(m)=myarray(m+1)
next
n=n-1
else
j=j+1
end if
loop
i=i+1
loop
response.write n
%>
回复
lihuasoft 2008-04-21
我学Delphi的,只是路过这里。
你的程序,只是比较相邻的两个数组元素是否相等,但是如果同一个数值在其他位置重复出现呢?怎么办?
所以,还是建议 请查一下冒泡排序的算法,在排序的同时进行比对统计。

因为你的程序根本就不会实现你的本意,改写是绝对的,错误嘛,不想分析了。呵呵
回复
YUYAO2 2008-04-21
可不可以不用排序
我的数组里不一定是数
那我的程序错在哪里
回复
lihuasoft 2008-04-21
排序就可以不必设置最大值了

可以在冒泡排序的过程中统计

我这里没有配置IIS,无法帮你试验。

网上有许多ASP冒泡排序的算法
回复
YUYAO2 2008-04-21
为什么要先排序
回复
lihuasoft 2008-04-21
先排序,再统计
回复
YUYAO2 2008-04-21
谢谢你
那个程序可以用,不过i=0
回复
相关推荐
发帖
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
帖子事件
创建了帖子
2008-04-21 09:40
社区公告
暂无公告