C# 杨辉三角

来源:互联网 发布:马士兵的java视频教程 编辑:程序博客网 时间:2024/04/27 14:21
using System;
using System.Collections.Generic;
using System.Text;

namespace _1602
{
    class Program
    {
        static void Main(string[] args)
        {
            int line,i,j,counter,left,right,mid;
            int[,] Arr;
            String sLine;
            Console.WriteLine("请输入您要输出的杨辉三角的行数:");
            sLine = Console.ReadLine();
            line = int.Parse(sLine);
            //成功读取数据;
            counter = 2*line -1;
            Arr = new int[line  , counter+2 ];

            //数组初始化;
            for (i=0;i<line  ;i++)
            {
                for (j=0;j<counter+2;j++)
                {
                    Arr[i,j]=0;
                }
            }

            //生成杨辉三角
            mid= counter /2+1;
            Arr[0,mid ]=1;
            for (i=1;i<line ;i++)
            {
                left = mid - i ;
                right= mid + i;
                for (j=left ;j<=right ;j++)
                {
                    Arr[i,j]=Arr [i-1,j-1]+ Arr [i-1,j+1];
                    //j++;
                }

            }

            //输出杨辉三角;
           // Console.WriteLine(mid);
           // Console.WriteLine(Arr [1,4]);
            for (i=0;i<line ;i++)
            {
                //Console.WriteLine("第"+ i + "行");
                for (j=0;j<counter +2;j++)
                {
                    if (Arr [i,j]==0)
                    {
                        Console .Write ("  ");
                    }
                    else
                    {
                        Console .Write (Arr [i,j]);
                    }
                }
                Console .WriteLine("") ;
            }

            Console.ReadKey();
           
           

        }
    }
}
 
原创粉丝点击