- 注册时间
- 2009-12-6
- 最后登录
- 2010-6-15
- 阅读权限
- 150
- 帖子
- 62
- 精华
- 1
- 积分
- 641
- UID
- 68
 
- 帖子
- 62
- 精华
- 1
- 积分
- 641
- UID
- 68
|
在VS2005下新建一个Visual C#控制台工程,添加如下代码,,
//---------分隔符
using System;
namespace ConsoleApplication4
{
/// <summary>
/// Class1 的摘要说明。
/// </summary>
class Class1
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main(string[] args)
{
const int N = 10; //要打印的层数
const int GAP = 3; //间隔
int[] arr = new int[N]; //用于保存生成的杨辉三角的每一行的值
arr[0] = arr[1] = 1; //杨辉三角的第二层
//先打印第一二层
string blank = "";
Console.Write(blank.PadRight(GAP * N,' '));
Console.WriteLine("1");
Console.Write(blank.PadRight(GAP * (N -1),' '));
Console.WriteLine(arr[0].ToString().PadRight(2*GAP) + arr[1].ToString());
//不断地求杨辉三角的每一层
for (int i = 1;i < N-1;i++)
{
arr[i + 1] = 1; // 最外边数为1
for (int j = i;j > 0;j--)
{
arr[j] = arr[j - 1] + arr[j]; //其余的数都等于它肩上的两个数的和
}
//打印出每一层
Console.Write(blank.PadRight(GAP * (N-i-1),' '));
for (int j = 0;j < i + 2;j++)
{
Console.Write(arr[j].ToString().PadRight(2*GAP, ' '));
}
Console.Write("\n");
}
Console.ReadLine();
}
}
} |
|