Начинающий пытается использовать другие заявления C #?

1

Я участвую в курсе обучения в первый раз, и я пытаюсь "взломать" этот один на века (я очень новичок в этом... извините!). Я не могу построить простой оператор if/else, в котором, если условия выполнены, он пишет положительный ответ, а если нет - отрицательный ответ. Но я получаю ошибки: недопустимый термин выражения 'else'
В качестве оператора можно использовать только присвоение, вызов, приращение, декремент и новые объектные выражения

Извините, если это не имеет смысла, я очень смущен! :(

static void Main(string[] args)
{
    Console.WriteLine("Do you like bananas?");
    Console.ReadLine();
    if (Console.ReadLine() == "Yes") ;
    {
        Console.WriteLine("Thanks for your time!");
    }
    else;
    {
        Console.WriteLine("Oh okay.");
    }
 }
}

}

  • 13
    удалить точку с запятой от другого и из-за условия if
  • 4
    Правило точки с запятой - это не «точка с запятой идет за всем», хотя на первый взгляд может показаться, что так оно и есть.
Показать ещё 2 комментария
Теги:
if-statement

3 ответа

7
Лучший ответ

вам нужно удалить точку с запятой, которая у вас есть после else. обычно его

if (condition) 
{
 //code
}
else 
{
 //code
}

и если у вас есть несколько условий для встречи, вы можете

if (condition)
{
 //code
}
else if (condition 2)
{
 //code
}
else 
{
 //code
}

последнее другое используется, если ни одно из условий не выполняется выше, как поведение по умолчанию

Кроме того, вам не нужны скобки для только одной строки кода

if (condition) DoInterestingStuff();
else DoNotDoInterestingStuff();

Несколько примеров условий (с неопределенными if-утверждениями для разъяснения):

if (bananas == true)
if (bananas) // same as above
if (bananas != false) // not equal to false, thus true
if (totalBananas >= 10)
3

Нет полуколонок:

 if (Console.ReadLine() == "Yes")
 {
    Console.WriteLine("Thanks for your time!");
 }
 else
 {
    Console.WriteLine("Oh okay.");
 }
2

Условная логика, хотя и простая, базовая, невероятно важно правильно учиться. Ты забыл немного вещей:

  • Неправильное размещение ; ,

Ты сделал:

if(Console.ReadLine() == "yes");
else;

; в конце этой части отчета недействительно. Если вы используете Visual Studio или другую среду IDE, не воюйте с инструментами, они попытаются помочь вам в таких проблемах. Например, строка squiggly должна появиться под ; в этом заявлении.

Ваш if else должен быть отформатирован таким образом:

if(value == "Yes")
{
     Console.WriteLine("Thank you...");
}

else if (value == "No")
{
     Console.WriteLine("No!");
}

else
{
     Console.WriteLine("Ah...");
}

Вы захотите ознакомиться с инструкцией if else и switch ранней стадии. Это ключевой элемент в фундаменте. Вы можете найти более подробную информацию о сети разработчиков Microsoft. На самом деле хорошие примеры - объяснение всего процесса.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню