В варианте с переменной в условии четко видно, на что обращать внимание: где эта переменная меняется.
В варианте только с EXIT'ами может быть не очевидно, что из этого цикла вообще есть выход.
Если бы я реализовал вариант и с переменной и с EXIT'ами стало бы совсем не очевидно: в условии видно, что выход произойдет по значению переменной, но при детальном разборе оказывается, что есть еще некие условия выхода.
Но, как мы и проговорили выше, все это, в основном, актуально для "чужого" кода. Если код читает только автор - то тут вопросов нет.
В общем, давайте на этом и закончим обсуждение циклов и прерывания их выполнения.
Я понимаю, что здесь однозначно правильного варианта не будет. Кому-то удобно так, кому-то эдак.