C#基础 转圈依次打印数字

 转圈依次打印数字

设置为5时,打印结果

C#基础 转圈依次打印数字_第1张图片

设置为10时,打印结果

C#基础 转圈依次打印数字_第2张图片

        static void Main(string[] args)
        {
            int n = 5;
            int[,] array = new int[n, n];
            int number = 1;
            int x ;
            int y ;
            for (int i = 0; i < n/2; i++)
            {
                for (x = i, y = i; y < n - 1 - i; y++)
                {
                    array[x, y] = number;
                    number++;
                }
                for (; x < n - 1 - i; x++)
                {
                    array[x, y] = number;
                    number++;                
                }
                for (; y > i; y--)
                {
                    array[x, y] = number;
                    number++;
                }
                for (; x > i; x--)
                {
                    array[x, y] = number;
                    number++;
                }
            }
            if (n%2 != 0)
            {
                array[n / 2, n / 2] = n * n;
            }
            for (int i = 0; i < array.GetLength(0); i++)
            {
                for (int j = 0; j < array.GetLength(1); j++)
                {
                    Console.Write("{0,-5}",array[i,j]);
                }
                Console.WriteLine();
            }
            Console.ReadKey();
        }

 

你可能感兴趣的:(#,C#基础)