m=m*arr[j]处已引发异常:读取访问权限冲突,arr是0xCDDDCDDE

int choose(int arr[],int n)
{
int i=0,j=0,k,m = 1, d= 1, end=0;
for (i = 0; i < n - 5; i++)
{
if ((i + 2) % 2 == 0)
{
for (j = i; j < i + 4; i++)
{
m = m * arr[j];
}
}
else
{
for (k = i; k < i + 4; k++)
{
d= d * arr[k];
}
}
if (m > n)
end = j;
else if(n > m)
end = k;
}
return (end);
}

m = m * arr[j];
看arr是否是合法的数组或者指针,n是多少,j是否越界。