我敢肯定这是微不足道的,但我无法弄清楚。我的老师刚刚向我们展示了如何使用.Next()创建随机数;昨晚的陈述,我被告知写一份作业,激发两个掷骰子并进行比较。我写了代码,一切正常,直到我将dice2添加到console.writeline为止。我在这里想念什么?

一旦添加dice2,我将收到以下错误,并且在删除dice2时,它们都会消失。


)预期
;预期
无效的表达词“)”
只能将赋值,调用,递增,递减,等待和新对象表达式用作语句。


这是我的代码

Random m = new Random();
Random m1 = new Random();
string again;

do
{

    int dice1 = m.Next(1, 6);
    int dice2 = m1.Next(1, 6);

    if (dice1 == 6 && dice2 == 6)
    {
        Console.WriteLine("You rolled boxcars");
    }
    else if (dice1 == 1 && dice2 == 1)
    {
        Console.WriteLine("You rolled snake-eyes");
    }
    else
    {
        Console.WriteLine("You rolled a {0} and a {1}", dice1 dice2);
    }
        Console.WriteLine("Again? (y/n)");
    again = Console.ReadLine();

} while (again == "y");


编辑

添加逗号后,我注意到我得到了相同的值,因此在进行了一些研究之后,我删除了Random m1 = new Random();。并更改int dice2 = m1.Next(1,6);到int dice2 = m.Next(1,6);而且有效。然后,我意识到它没有给我任何6个值,所以我将其更改为(1,7),并且效果很好

最佳答案

您在此行上缺少dice1dice2之间的逗号:

Console.WriteLine("You rolled a {0} and a {1}", dice1 dice2);


应该:

Console.WriteLine("You rolled a {0} and a {1}", dice1, dice2);

关于c# - 尝试使基本骰子程序正常工作时出错,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19531568/

10-12 14:54