Я пытаюсь понять логику этого кодаЕсли заявление в случае заявления
int i = 13;
if (i<10) if (i>=5) Console.WriteLine("Case number 1");
else Console.WriteLine("case number 2");
Console.ReadLine();
Так что я знаю, что это не правильный код (так как должно быть скобки, чтобы сделать это приложение работает).
Я знаю, как сделать этот код «чистый», изменяя его
Но я пытаюсь понять, как Csharp на самом деле ведет с этим erronated код, логику выполнения этого кода
Из того, что я читаю, else применяется к ближайшему, если в этом случае (если> = 5).
Так что, когда я пишу i = 3, он читает первый, если и идет к первому другому, и консоль дает мне «Случай № 2».
Когда я пишу i = 7
он читает 2-й и дает мне «Case Nr 1»
, когда я пишу i = 13
это не дает мне ничего
Из того, что я понял, исследуя это должен ездить еще, так как 2 ИФ были проверены раньше, поэтому из того, что я понимаю, когда он проверяет первый, если он должен перейти на другой, если он проверяет, то ли это, должно быть, пойти на 2-й тоже, так как if на самом деле не имеет смысла.
Если он проверяет только 2-й, если он должен дать мне номер дела.
Так что я определенно не так в моем образе мышления, но я не могу найти, почему он не появляется что-нибудь
Он ничего не печатает, поскольку 'else' установлен в' if (i> = 5) ' – Icepickle
Тогда, когда int равно 13, тогда оно должно выполнить else Console.WriteLine («case number 2»); что он не –
, он не попадает туда, первый, если не удается, поэтому вы переходите непосредственно к части ReadLine – Icepickle