using System;
using System.Collections.Generic;
using System.Text;

    class Program
    {
        static void Main(string[] args)
        {
 
             /*
             * 测试菱形输出 PrintC()
             */
            for (int i = 0; i < 10; i++)
            {
                PrintC(i);
            } 
        }
    
        #region 输出菱形图案  PrintC(int k)
        #region 题目
        /*
         *
         *
                  编程产生(显示)如下图所示的 n 阶菱形图案。N在 0-9 之间,
                  若输入的 n大于 9,则
                    位数作为阶数。将图案显示在屏幕中央。
         *
                    0 阶输出:
                                                    0
                    1 阶输出:
                                                    0
                                                   000
                                                  11111
                                                   000
                                                    0
                    2 阶输出:
                                                    0
                                                   000
                                                  11111
                                                 1111111
                                                222222222
                                                 1111111
                                                  11111
                                                   000
                                                    0
                    3 阶输出:
                                                    0
                                                   000
                                                  11111
                                                 1111111
                                                222222222
                                               22222222222
                                              3333333333333
                                               22222222222
                                                222222222
                                                 1111111
                                                  11111
                                                   000
                                                    0
        
         
         */
        #endregion
        static void PrintC(int k)
        {
            /*
             *
             * 上半部分(中轴线及以上部分)
             *
             */
            Console.WriteLine(k+"阶输出!");
            int temp=0;
            for (int i = 0; i < 2*k+1; i++)
            {
                Console.WriteLine();
                /*
                 * 为了使各阶中心对齐,需要根据阶数k
                 * 输出空格,当k为9时,不需要输出!
                 *
                 */
                for (int j = 0; j < 9-k; j++)
                {
                    Console.Write("    ");
                }
                /*
                 * 为了使每一阶内各行数字中心对齐
                 * 需要输出空格!
                 */
                for (int j = 0; j < 2*k+1-i; j++)
                {
                    Console.Write("  ");
                }
                //输出数字
                temp = i / 2;
                for (int j = 0; j < 2*i+1; j++)
                {
                    Console.Write(temp+" ");
                }
            }
            /*
            *
            * 下半部分(中轴线以下部分)
            *
            */
            for (int i = 2 * k - 1; i >= 0; i--)
            {
                Console.WriteLine();
                /*
                 * 为了使各阶中心对齐,需要根据阶数k
                 * 输出空格,当k为9时,不需要输出!
                 *
                 */
                for (int j = 0; j < 9 - k; j++)
                {
                    Console.Write("    ");
                }
                /*
                 * 为了使每一阶内各行数字中心对齐
                 * 需要输出空格!
                 */
                for (int j = 0; j < 2 * k + 1 - i; j++)
                {
                    Console.Write("  ");
                }
                //输出数字
                temp = i / 2;
                for (int j = 0; j < 2 * i + 1; j++)
                {
                    Console.Write(temp + " ");
                }

            }
                Console.WriteLine();
        }
        #endregion
 
 
        }

0

收藏

mayuquan

39篇文章,2W+人气,0粉丝