为了账号安全,请及时绑定邮箱和手机立即绑定

报错问题?

System.IndexOutOfRangeException:“Index was outside the bounds of the array.”请问这个报错是什么问题呀

代码没有问题

 static void Main(string[] args)

        {

            int[] num = new int[] { 3, 34, 43, 2, 11, 19, 30, 55, 20 };

            bool hasit = false;

            foreach(int i in num)

            {

                if (num[i] % 7 == 0)

                {

                    hasit = true;

                    break;

                }

            }

            if (hasit)

            {

                Console.Write("有七的倍数");

            }

            else

            {

                Console.Write("没有七的倍数");

            }

        }

    }


正在回答

4 回答

感觉你是多了一个}吧。删一个试试

0 回复 有任何疑惑可以回复我~

楼上的两位是对的,你用的是foreach,意思就是变量i得到的是num数组里的每个值,所以要用i%7==0.

0 回复 有任何疑惑可以回复我~

你num已经赋值给i了  

if (num[i] % 7 == 0)

改成

if (i % 7 == 0)


0 回复 有任何疑惑可以回复我~

if (num[i] % 7 == 0)

改成

if (i % 7 == 0)

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

报错问题?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信