星型打印(for 嵌套循环)

来源:互联网 发布:欧元 石油 知乎 编辑:程序博客网 时间:2024/06/07 23:06


下文是对各种星型打印的总结

 

C# Code:

 

class Program    {        static void Main(string[] args)        {            const int MAX_ROWS = 10;            //打印矩形星型            /*for (int row = 1; row <= MAX_ROWS; row++)            {                Console.Write("**********");                Console.WriteLine();            }*/            //打印直角三角形星型(星往左堆积:直立和倒立的)            /*for (int row = 1; row <= MAX_ROWS; row++)             {                for (int star = 1; star <= row; star++) //内部循环每次迭代打印一个星;                   Console.Write("*");//完成后它不移动到下一行;                Console.WriteLine();            }            /*for (int row = 1; row <= MAX_ROWS; row++)             for (int row = 1; row <= MAX_ROWS; row++)            {                for (int star = 10; star >= row; star--)//内部循环每次迭代打印十个星;                    Console.Write("*");                Console.WriteLine();            }*///注意这两种情况由于空格堆积在右边,所以不用再特意去循环空格;            //打印直角三角形星型(星往右堆积:直立和倒立)            /*for (int row = 1; row <= MAX_ROWS; row++)            {                for (int blank = 9; blank >= row ; blank--)//打印9个空格                    Console.Write(" ");                for (int star = 1; star <= row; star++)//打印一个星                    Console.Write("*");                Console.WriteLine();            }*/            /*for (int row = 1; row <= MAX_ROWS; row++)            {                for (int blank = 0; blank <= row; blank++)                    Console.Write(" ");                for (int star = 10; star >= row; star--)                    Console.Write("*");                Console.WriteLine();            }*/            //打印菱形星型(分开两部分分别是等腰三角形)            for (int row = 1; row<=5; row++)            {                for (int blank = 5-row; blank >=1; blank--)//左边每行需要输出5-row个空格,右边空格不用管:4,3,2,1                    Console.Write(" ");                for (int star = 1; star <=2 * row -1; star++)//1,3,5,7,9                    Console.Write("*");                                Console.WriteLine();            }            for (int row = 5; row >= 1; row--)            {                for (int blank = 1; blank <= 5 - row; blank++)//左边每行需要输出5-row个空格,右边空格不用管:1,2,3,4                    Console.Write(" ");                for (int star = 2 * row - 1; star >= 1; star--)//9,7,5,3,1                    Console.Write("*");                Console.WriteLine();            }            Console.ReadKey();        }    }


原创粉丝点击