2013-04-23 2 views
-2

Можете ли вы, ребята, указать, что не так с этим кодом?C# условные операторы

Я хочу, если кто-то ответит как земля, чтобы вы были правы, а если не ошибаетесь.

Console.WriteLine("What planet do we live on"); 

string name = Console.ReadLine(); 

if (name =earth) 
{ 
    Console.WriteLine("Yes, you're right"); 
} 
else 
{ 
    Console.WriteLine("You're wrong"); 
} 
Console.ReadLine(); 
+4

Итак, в чем вопрос? –

+0

что вы хотите знать из этого ????? – Virus

+1

Мы попытались угадать, каков ваш точный вопрос. Но, пожалуйста, укажите * данные об ошибке * в свой вопрос. –

ответ

1

Неправильное состояние. это должно быть

if (name == "earth"){ } 

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

+0

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

+0

@scylla - вы также использовали один '=' (присваивание) вместо '==' (сравнение). – Corak

+0

приветствуется ': D', если у вас есть несколько условий,' '' '' '' '' '' '' '' '' '' '' '' может быть более эффективным, чем трёхмерный оператор, как показано Hossein. –

4

Обратите внимание на ^ знак в коде ниже:

Console.WriteLine("What planet do we live on"); 

string name = Console.ReadLine(); 

Console.WriteLine(name == "earth" ? "Yes, you're right" : "You are wrong"); 
         ^^^ ^
Console.ReadLine(); 
1
if (name == "earh") 
{ 
    Console.WriteLine("Yes, you're right"); 
} 
else 
{ 
    Console.WriteLine("You're wrong"); 
} 

Вы использовали = вместо ==.

Вы должны сравнить "earth" (String) и не earh

1

== является равенство Comparision оператор, в то время как = является назначение в C#. Поэтому вы должны использовать ==, как другие указали:

if(planet == earth) { 
} 

Использование = присвоит earthplanet к и вернуть earth, а не сравнения и возвращение bool.

1
if (name == "earth") 
{ 
} 

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

Если есть один =, то он просто присваивает значение.

Смежные вопросы