初学者试图使用其他陈述C#?

时间:2014-11-04 17:22:54

标签: c# if-statement

我是第一次参加计算机课程的学生,我一直试图“破解”这个课程多年(我对此很新......抱歉!)。我似乎无法构建一个简单的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.");
    }
 }
}

}

3 个答案:

答案 0 :(得分:7)

你需要删除else后面的分号。 一般来说

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

如果您有多个条件可以见到

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

如果上面没有满足任何条件,则使用最后一个else,它就像默认行为

此外,您不需要仅针对一行代码的大括号

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)

答案 1 :(得分:3)

没有分号:

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

答案 2 :(得分:2)

条件逻辑虽然简单,基本,但正确学习非常重要。你遗忘了很多东西:

  • ;
  • 的展示位置不正确

你做了:

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

声明特定部分末尾的;无效。如果您使用Visual Studio或其他IDE不与工具对抗,他们会尝试帮助您解决此类问题。例如,在该语句中的;下应该出现一条波浪线。

您的if else应采用以下方式格式化:

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

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

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

您希望尽早熟悉if elseswitch声明。他们是基金会的关键部分。您可以在Microsoft Developer Network上找到更多详细信息。非常好的例子是对整个过程的探索。