C# 单击按钮 索引超出了数组界限

来源:百度知道 编辑:UC知道 时间:2024/06/07 15:41:56
如下:
这个程序的主要目的是单选题的正误判断.
我设计了两个按钮,四个radioButton,还一个TextBox,问题出在按钮这里,按钮一个是"判断正误",一个是"下一题"功能,可以运行,但是在进入最后一题,提示了"做完题目!"后,再点击判断正误,就出现"索引超出了数组界限",是什么原因呢?怎么修改才能让消除这个问题.感激~!
private void button1_Click(object sender, EventArgs e)
{

if (Answer[s] == 1 && radioButton1.Checked)
MessageBox.Show("恭喜,你选对了!");
else if (Answer[s] == 2 && radioButton2.Checked)
MessageBox.Show("恭喜,你选对了!");
else if (Answer[s] == 3 && radioButton3.Checked)
MessageBox.Show("恭喜,你选对了!");
else if (Answer[s] == 4 && radioButton4.Checked)
MessageBox.Show("恭喜,你选对了!");
else MessageBox.Show("选择错误!");

}

private void button2_Click(object sender, EventArgs e)
{
s

你做完了的条件是s>3,也就是s==4的时候,你判断时Answer[4]当然已经越界了

这个是我的猜测,因为我不知道你的Answer的定义

radioButton5?

索引超出了数组界限

那就减小索引

索引一般都是从0开始,C#就是

answer[s]数组从0开始哦,就怕你的全局s从1开始,具体的代码我们没看全,你最好自己测试,做断点,判断里面的数字变化情况

在private void button1_Click(object sender, EventArgs e) 中,加
s--;