本帖最后由 n530956064 于 2013-02-04 17:01:21 编辑

解决方案 »

  1.   

    你这循环代码,结果是一样的下面这两句会不一样
    int a=++x;
    int a=x++;
      

  2.   

    楼主是想问下面这两个吧
    下面这两个输出结果确实不同  class Program
        {
            static void Main(string[] args)
            {
                for (int x = 1; ++x <= 10;)
                {
                    Console.WriteLine(x);
                }
            }
        }  class Program
        {
            static void Main(string[] args)
            {
                for (int x = 1; x++ <= 10; )
                {
                    Console.WriteLine(x);
                }
            }
        }
      

  3.   

    int x=1;怎么从2开始了?你这不是都从1开始的吗?
      

  4.   

    循环里一个分号就是一句代码
    单独一句代码 ++x;和x++;都等价于x=x+1;
      

  5.   

    在for循环中,单步调试可以看到,先是执行赋值语句x=1,然后判断是否超出范围,x<=10。
    如果没有超出范围,则执行 Console.WriteLine(x);语句。
    最后执行x++或者++x,所以,在for循环中这两个代码是一样的。
    牛哥结贴吧
      

  6.   

    你要想体现不同,用下面的代码:        public static void Test1()
            {
                for (int x = 1, j = 1; x <= 10; ++x)
                { Console.WriteLine(j++); } 
            }        public static void Test2()
            {
                for (int x = 1, j = 1; x <= 10; ++x)
                { Console.WriteLine(++j); }
            }其实说简单点:j++ 就是先对外提供j(此处是给WriteLine做参数),再执行++运算;
                  ++j 就先执行++运算,再对外提供j。
      

  7.   

      class Program
        {
            static void Main(string[] args)
            {
                for (int x = 1; x <= 10; )
                {
                    Console.WriteLine(++x);
                }
            }
        }
     
      class Program
        {
            static void Main(string[] args)
            {
                for (int x = 1; x <= 10; )
                {
                    Console.WriteLine(x++);
                }
            }
        }
    这结果就不同了。
    一样是因为x的计算是在执行之后才自加的。
      

  8.   


    楼主要搞清for循环是怎么运算的啊1.循环变量赋值
    2.判断循环条件是否成立
    3.执行循环体
    4.计算循环变量
      

  9.   

    csdn每天都能看见++i和i++这样问题的帖子,伤不起啊还有String和Stringbuffer的帖子。。