using System;
using System.Collections.Generic;
using System.Text;namespace ConsoleApplication1
{
    class Program
    {
        
        static void Main(string[] args)
        {  
          string Stemp;
            int iNum =new System.Random().Next() % 100;
            int iCount = 0;
            int iGuess = 0;
            Console.WriteLine("请输入一个大于0小于100的整数:");
            do
            {
                Console .ReadLine();
                try{
              iGuess = Int32 .Parse(Stemp);
                  if(iGuess >iNum )
                  {
                      Console .WriteLine("bigger");
                  }
                  else if(iGuess <iNum )
                  {
                      Console .WriteLine("smaller");
                  }
                catch (Exception e)
                 {
                     Console .WriteLine("你输入的数{0}不是一个有效的数字",Stemp );
                 }                 finally
                {
                    Console .Write ("你已经猜了第{0}次",++iCount );
                }            }while (iGuess!=iNum );
                       Console .WriteLine("恭喜你猜对了,这个数字是{0}",iNum );        }
    }
}

解决方案 »

  1.   

    Console .ReadLine();
    try{
    iGuess = Int32 .Parse(Stemp);是不是应该
    Stemp=Console .ReadLine();?
      

  2.   

    string Stemp;
                int iNum = new System.Random().Next() % 100;
                int iCount = 0;
                int iGuess = 0;
                Console.WriteLine("请输入一个大于0小于100的整数:");
                do
                {
                    //修改的地方
                    Stemp = Console.ReadLine();
                    try
                    {
                        iGuess = Int32.Parse(Stemp);
                        if (iGuess > iNum)
                        {
                            Console.WriteLine("bigger");
                        }
                        else if (iGuess < iNum)
                        {
                            Console.WriteLine("smaller");
                        }
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine("你输入的数{0}不是一个有效的数字", Stemp);
                    }                finally
                    {
                        Console.WriteLine ("你已经猜了第{0}次", ++iCount);
                    }            } while (iGuess != iNum);            Console.WriteLine("恭喜你猜对了,这个数字是{0}", iNum);
      

  3.   

    下面是错误提示:
        由于缺少调试目标"c:\program files\..........\guess.exe",visual studio 无法进行调试,请重新生成项目调试,或者相应的设置outPutPath和AssemblyName属性,使其指向目标程序集的正确位置.
      

  4.   

    不太清楚你的这个问题...我测试过是可以的...这样吧,程序也不算复杂,新建个控制台程序,然后将上面的代码拷到
    static void Main(string[] args)
    {
       //拷到这
    }即可....
      

  5.   

    感谢各位回答我这个菜鸟的问题.
    没错,这个是由于我的粗心
    Stemp没有初始化.
    还有try那里少了个 "}"
    再次感谢各位...........