C# 无效的表达式项';其他';在我第二次打字之后

C# 无效的表达式项';其他';在我第二次打字之后,c#,C#,有什么问题???Visual studio在我键入的第二个“else”之后告诉我无效的表达式术语“else”,我不知道为什么?删除两个else关键字后的分号: static void Main(string[] args) { Console.WriteLine("what is the value of 3 + 8?"); number = int.Parse(Console.ReadLine()); if (number == 11) { Co

有什么问题???Visual studio在我键入的第二个“else”之后告诉我无效的表达式术语“else”,我不知道为什么?

删除两个
else
关键字后的分号:

static void Main(string[] args)
{
    Console.WriteLine("what is the value of 3 + 8?");
    number = int.Parse(Console.ReadLine());
    if (number == 11)
    {
        Console.WriteLine("well done");
        Console.WriteLine("press enter once");
        Console.ReadLine();
    }
    else;
    {
        Console.WriteLine("its 11 u idiot!!!");
        Console.ReadLine();
    }

    Console.WriteLine("what is the value of 23132-23131?");
    number = int.Parse(Console.ReadLine());

    if (number == 1);
    {
        Console.WriteLine("oh yeah!");
        Console.ReadLine();
    }
    else;
    {
        Console.WriteLine("u r such a noob!");
        Console.ReadLine();
    }
}
if
行之后:

else   // was else;
此外,您应该实际声明
编号

if (number == 1)   // was if (number == 1);
这是应该有效的代码的最终版本:

var number = int.Parse(Console.ReadLine());
像这样做

static void Main(string[] args)
{
    Console.WriteLine("what is the value of 3 + 8?");
    var number = int.Parse(Console.ReadLine());
    if (number == 11)
    {
        Console.WriteLine("well done");
        Console.WriteLine("press enter once");
        Console.ReadLine();
    }
    else
    {
        Console.WriteLine("its 11 u idiot!!!");
        Console.ReadLine();
    }

    Console.WriteLine("what is the value of 23132-23131?");
    number = int.Parse(Console.ReadLine());

    if (number == 1)
    {
        Console.WriteLine("oh yeah!");
        Console.ReadLine();
    }
    else
    {
        Console.WriteLine("u r such a noob!");
        Console.ReadLine();
    }
}

你的IF-elsean上有分号,缩进只是。。。误导性。记住
其他;{..}
是非常有效的语法,尽管它可能不会执行您期望的操作(
终止
else
块,因此大括号位只是始终执行的作用域块)。真正的问题是
if()这是一个带有空块的条件。后面的
{…}
同样是有效的作用域块,但不幸的是,
else
不再具有活动的
if
连接to@JonathanTan:您缺少
number
too的数据类型在删除分号和}后,Visual studio会说:expect{and;
var number=int.Parse(Console.ReadLine());
我以为我打字了that@Jonathan,DarkKnight没有指出您应该删除
}
。所以整个“在需要时声明变量,而不是更早”的狂热完全没有影响到你
int  number;
Console.WriteLine("what is the value of 3 + 8?");
number = int.Parse(Console.ReadLine());
if (number == 11)
{
    Console.WriteLine("well done");
    Console.WriteLine("press enter once");
    Console.ReadLine();
}
else
{
    Console.WriteLine("its 11 u idiot!!!");
    Console.ReadLine();
}

Console.WriteLine("what is the value of 23132-23131?");
number = int.Parse(Console.ReadLine());

if (number == 1)
{
    Console.WriteLine("oh yeah!");
    Console.ReadLine();
}
else
{
    Console.WriteLine("u r such a noob!");
    Console.ReadLine();
}