初学C#,关于杨辉三角的问题!
using System;
class Test
{
public static void Main()
{
int[,] a=new int[5,5];
a[0,0]=1;
for(int i=1;i <=5;i++){
a[i,0]=1;
a[i,i]=1;
for(int j=1;j <i;j++){
a[i,j]=a[i-1,j-1]+a[i-1,j];
}
}
for(int i=0;i <5;i++){
for(int j=0;j <i;j++){
Console.WriteLine( "{0} ",a[i,j]);
}
Console.ReadLine();
}
}
}
我的程序是这样的,照书上搬的,出现了异常,调试的时候提示说 "索引超出了数组界限 "
高手帮我看看啦,谢谢!
------解决方案--------------------书上的有问题,改成这样:
using System;
class Test
{
static void Main()
{
int[,] a = new int[5, 5];
a[0, 0] = 1;
for (int i = 1; i < 5; i++)
{
a[i, 0] = 1;
a[i, i] = 1;
for (int j = 1; j < i; j++)
{
a[i, j] = a[i - 1, j - 1] + a[i - 1, j];
}
}
for (int i = 0; i < 5; i++)
{
for (int j = 0; j <= i; j++)
{
Console.Write( "{0} ", a[i, j]);
}
Console.WriteLine();
}
Console.ReadLine();
}
}
------解决方案--------------------hoho 的确 刚才没看仔细 for(int j=1;j <i;j++) //这里j <i改为j <=i
这句也不对