| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 446 人关注过本帖
标题:运行出错
取消只看楼主 加入收藏
onlylove0106
Rank: 1
等 级:新手上路
帖 子:43
专家分:0
注 册:2007-4-23
收藏
 问题点数:0 回复次数:1 
运行出错

数组a中存放m个随即产生的不大于n的正整数,编写过程删除数组中相同的元素,并显示删除前和删除后的数组中的所有内容以及被删除的数据个数。
如题,我编的程序是:
Dim m%, n%, i%, Num%, j%, Same%, d%
Print Chr(13) + Chr(13); " 随机生成的原数组为:"
Dim a()
m = Val(InputBox("请输入数组元素个数m:(输入-1结束)"))
If m = -1 Then Exit Sub
n = Val(InputBox("请输入正整数n的值(输入-1结束):"))
If n = -1 Then Exit Sub
For i = 1 To m
ReDim Preserve a(i)
a(i) = Int(Rnd * n)
Print a(i);: d = d + 1
If d Mod 10 = 0 Then Print a(i)

Next i
For i = 1 To m
For j = i + 1 To m
If a(i) = a(j) Then
Same = a(j)
a(i) = "" '删除a(i)
Num = Num + 1
a(j) = ""
Num = Num + 1
End If
Next j
Next i
Print Chr(13) + Chr(13); "其中相同的元素为:"; Same
Print Chr(13) + Chr(13); "删除的相同元素个数为:"; Num

当运行时输入,100和100是就不出错
而输入1000和1000时就说:Same = a(j)“类型不匹配”
这是为什么啊?

搜索更多相关主题的帖子: 运行 
2007-05-14 01:47
onlylove0106
Rank: 1
等 级:新手上路
帖 子:43
专家分:0
注 册:2007-4-23
收藏
得分:0 
谢谢美女!

2007-05-14 04:52
快速回复:运行出错
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.033958 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved