问答详情
源自:4-10 编程练习

如下代码所示,为什么在循环体外面声明y不行

using System;

using System.Collections.Generic;

using System.Text;


namespace Test

{

    class Program

    {

        static void Main(string[] args)

        {

            int x = 1;

           /*int y = 1;

            为什么在这里声明y,打印出来就只有第一行

            0......0*/

               for (; x <= 7; x++)

            {

                for (int y = 1;y <= 7;y++)

                {

                    if (x == y || x + y == 8)

                    {

                        Console.Write("O");

                    }

                    else

                    {

                        Console.Write(".");

                    }

                }

                Console.WriteLine();

            }

        }

    }

}


提问者:qq_打得不错_0 2019-11-13 22:45

个回答

  • James丿浪
    2020-01-07 17:49:18

    应该是在循环体外面的x、y的值是不受循环体内影响,导致无法继续循环下去,只输出了一层就打印出来了

  • 慕数据2167627
    2019-11-14 15:26:19

    不影响啊