VB.net编程初学者出现“索引超出了数组界限”问题,望各位高手解答。

DimnameAsStringDimyuwenAsShortDimshuxueAsShortDimyingyuAsShortDimzongheAsShortDimping... Dim name As String
Dim yuwen As Short
Dim shuxue As Short
Dim yingyu As Short
Dim zonghe As Short
Dim pingjunfen As Short
xingming = InputBox("输入姓名", "输入名字吧")
yuwen = InputBox("输入语文成绩", vbOKOnly)
shuxue = InputBox("输入数学成绩", vbOKOnly)
yingyu = InputBox("输入英语成绩", vbOKOnly)
zonghe = yuwen + shuxue + yingyu
pingjunfen = zonghe / 3
MsgBox("平均分"(pingjunfen), [vbOKOnly])
错误出现在最后一行,以前我在VB6里也是用这种方法编辑,怎么现在却出错了呢。
展开
 我来答
wshygnh
2011-02-10 · 超过68用户采纳过TA的回答
知道答主
回答量:127
采纳率:0%
帮助的人:172万
展开全部
在VB里,"平均分"(pingjunfen), 这是数组的调用方法,当然会报错了
这样改吧:
Dim xingming As String
Dim yuwen As Short
Dim shuxue As Short
Dim yingyu As Short
Dim zonghe As Short
Dim pingjunfen As Short
xingming = InputBox("输入姓名", "输入名字吧")
yuwen = InputBox("输入语文成绩", vbOKOnly)
shuxue = InputBox("输入数学成绩", vbOKOnly)
yingyu = InputBox("输入英语成绩", vbOKOnly)
zonghe = yuwen + shuxue + yingyu
pingjunfen = zonghe / 3
MsgBox("平均分:" & pingjunfen, [vbOKOnly])
nqildp
2011-02-10 · TA获得超过1419个赞
知道小有建树答主
回答量:1159
采纳率:0%
帮助的人:968万
展开全部
问题在这里
for (int i = 0; i <= k / 2; i++)
{
int temp;
temp = change[i];
change[i] = change[k - i];
change[k - i] = temp;
}

第一次循环的时候
change[0] = change[4];
而你这个数组只有4个元素
索引最大也只有3
所以超过了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式