if (mas[i] % 2 == 0 && mas[i - 1] % 2 != 0 || mas[i] % 2 != 0 && mas[i - 1] % 2 == 0) continue;
Здесь вы говорите, если текущее и предыдущие значения четное и нечетное, то проверяем следующую комбинацию за счет того, что написали команду continue
Я бы даже так написал
namespace Test
{
class Program
{
public static void checkArray(int[] mas)
{
int check = 0;
for (int i = 1; i < mas.Length; i++)
{
if (mas[i] % 2 == 0 && mas[i - 1] % 2 != 0 || mas[i] % 2 != 0 && mas[i - 1] % 2 == 0)
{
check++;
if (check == (mas.Length - 1))
Console.WriteLine("Массив №1 прошёл проверку. 0");
}
else
Console.WriteLine("Массив №1 не прошёл проверку. Индекс-" + i);
}
}
static void Main(string[] args)
{
int[] mas = { 1, 2, 3, 4 };
int[] mas1 = { 1, 2, 3, 5 };
checkArray(mas);
checkArray(mas1);
Console.Read();
}
}
}