C# 编写简单的控制台应用程序 显示如下数字金字塔


C# 编写简单的控制台应用程序 显示如下数字金字塔

闲话不说,直接上代码:

 

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

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            #region  1.自定义金字塔立三角右侧部分 
            /*您希望建造几层的金字塔呢?(请输入一位整数)
            3
            *
            **
            ***
            请按任意键继续. . .*/

            //int n,r,c;//目标层数,行,列(1,0)(2,1)
            //Console.WriteLine("您希望建造几层的金字塔呢?(请输入一位整数)");
            //n = Convert.ToInt32(Console.ReadLine());
            //for ( r = 0; r < n; r++ )//行
            //{
            //    Console.Write("*");
            //    for ( c = 0; c < r; c++ ) 
            //    {
            //        Console.Write("*");                    
            //    }
            //    if (r==c) 
            //    {
            //        Console.WriteLine();
            //    }
            //}      
            #endregion
            #region 2.自定义金字塔效果如下
            /*
             注-代表空格 
            ---*--- 
            --***-- 
            -*****- 
            ******* 
            -*****- 
            --***-- 
            ---*--- 
             */
            //1.自定义金字塔立三角上半部分
            //int n, r,c,d,e=1;//目标层数,行,列(1,0)(2,1).星号,空格
            //Console.WriteLine("您希望建造几层的金字塔呢?(请输入一位整数)");
            //n = Convert.ToInt32(Console.ReadLine());//输入一个4
            //for ( r = n - 1; r >= 0; r-- )//先输出上半部分4行
            //{

            //    for ( c = 0; c < r; c++ )//循环输出空格 
            //    {        
            //         Console.Write("-");                   
            //    }
            //    for ( d = 0; d < e; d++ )//循环输出星号 
            //    {
            //        Console.Write("*");
            //    }
            //    e += 2;//下一次输出的星号个数加2 
            //    Console.WriteLine();//一行输出结束,输出一个回车符,光标跳转到下一行 
            //}
            2.自定义金字塔立三角下半部分
            //e = e - 2;//由于上面得到y为9,所以应该减去2 为7
            //for ( int r2 = 1; r2 <= n - 1; r2++ )//先确定下半部分是3行
            //{
            //    e -= 2;//第一次 下一次输出的星号个数减2,为5
            //    for ( int c1 = 1; c1 <= r2; c1++ )//“循环输出空格”或者说确定什么时候打印空格
            //    {
            //        Console.Write("-");
            //    }
            //    for ( int i = 1; i <= e; i++ )//“循环输出*”或者说确定什么时候打印*
            //    {
            //        Console.Write("*");
            //    }
            //    Console.Write("\n");
            //}Console.ReadLine();
            #endregion
            #region 3.自定义金字塔效果如下
            /*
             用C#编写一个程序,显示如下数字金字塔
                                  1
                                 121
                                12321
                               1234321
                              123454321
                             12345654321
                            1234567654321
                           123456787654321
                          12345678987654321
             */
            Console.WriteLine("请输入一个一到九的整数");
            int n = 0;
            n = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("您输入的数是:" + n);
            //遍历行
            for (int hang = 1; hang <= n; hang++)
            {
                //留空格
                for (int count = 1; count <= n - hang; count++)
                {
                    Console.Write(" ");
                }
                //写左边数字
                for (int i = 1; i <= hang; i++)
                {
                    Console.Write(i + " ");
                }
                if (hang == 1)
                {
                    Console.WriteLine("");
                }
                else
                {
                    //写右边数字
                    for (int j = hang - 1; j >= 1; j--)
                    {
                        Console.Write(j + " ");
                        if (j == 1)
                        {
                            Console.WriteLine("");
                        }
                    }
                }
            } 
            #endregion
        }      
    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

LuckyDog阿祥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值