2017-07-06 67 views
0

我是编程c#的新手。我试图编写一个简单的程序,它可以在cmd下运行。我认为它会随机创建一个noumber,用户会输入数字,他/她会尝试猜测随机创建的数字。该程序会告诉你,如果它低于或高于你输入的数字...我开始编程,但我遇到了问题...我无法比较用户和随机生成的用户放入的Noumber。将ConsoleKeyInfo更改为int

这是代码...

class Program 
{ 
    static void Main(string[] args) 
    { 
     Console.WriteLine("Guess the number!"); 
     Random randomObject = new Random(); 
     int RandNoumber = randomObject.Next(9999) + 1; 
     ConsoleKeyInfo keyinfo = Console.ReadKey(); 
     if (keyinfo < RandNoumber) //This is where I got an error msg 
     { 
     } 
    } 
} 

谢谢所有支持!

MP

+2

确实值'keyinfo'任何属性或字段?如果在Visual Studio中键入'keyinfo.',会发生什么? –

回答

1

你可以使用Consol.ReadLine,然后分析用户输入

static void Main(string[] args) 
{ 
    Console.WriteLine("Guess the number!"); 
    Random randomObject = new Random(); 
    int RandNoumber = randomObject.Next(9999) + 1; 

    int enteredNumber; 
    while (true) 
    { 
     bool parsed = int.TryParse(Console.ReadLine(), out enteredNumber); 

     if (parsed) 
     { 
      if (enteredNumber < RandNoumber) 
      { 
       Console.WriteLine("Wrong it's higher"); 
      } 
      else if (enteredNumber > RandNoumber) 
      { 
       Console.WriteLine("Wrong it's lower"); 
      } 
      else 
      { 
       Console.WriteLine("Good Job!"); 
       //Do victory dance 
       return; 
      } 
     } 
     else 
     { 
      Console.WriteLine("Please enter a number"); 
     } 
    } 
} 
+0

谢谢你的帮助! – DragonKiss

+0

您是否为主题施法者写了一个周期? :) – fddima

+0

@BigFoot不客气:) – CNuts