View Code
 1         /// <summary>
 2         /// 打印杨辉三角
 3         /// </summary>
 4         /// <param name="lines">行数</param>
 5         private static void Print(int lines)
 6         {
 7             //二维数组用于存储数据
 8             int[][] array = new int[lines][];
 9             //初始化前两行
10             array[0] = new int[] { 1 };
11             array[1] = new int[] { 1, 1 };
12             for (int i = 2; i < lines; i++)
13             { 
14                 array[i]=new int[i+1];
15                 for (int j =1; j < i; j++)
16                 {
17                     array[i][j] = array[i - 1][j - 1] + array[i - 1][j];
18                 }
19                 //将每行第一列和最后一列置为1
20                 array[i][0] = 1;
21                 array[i][i] = 1;
22             }
23             PrintArray(array);
24         }
25 
26         /// <summary>
27         /// 打印数组
28         /// </summary>
29         /// <param name="array"></param>
30         private static void PrintArray(int[][] array)
31         {
32             for (int i = 0; i <= array.Length - 1; i++)
33             {
34                 //打印前面空格
35                 for (int j = array.Length -array[i].Length; j > 0; j--)
36                 {
37                     Console.Write("  ");
38                 }
39                 //打印数据
40                 for (int j = 0; j < array[i].Length; j++)
41                 {
42                     Console.Write(array[i][j] + "   ");
43                 }
44                 //换行
45                 Console.WriteLine();
46             }    
47         }
posted on 2012-05-11 13:53  捣乃忒  阅读(132)  评论(0编辑  收藏  举报