直接附上代码,用代码说明
#define N 10
int main()
{
int a[N][N]; //创建二维数组,保存每个值
int j = 0;
int i = 0;
for(i=0; i<N; i++) //杨辉三角的第一列和最后一列都是1,首先打印这两列
{
a[i][0] = 1;
a[i][i] = 1;
}
for(i=2; i<N; i++) //打印中间部分内容,每个数等于它上面一行两个数的和
{
for(j=1; j<i; j++)
{
a[i][j] = a[i-1][j]+a[i-1][j-1];
}
}
for(i=0; i<N; i++) //将算好的值打印出来
{
for(j=0; j<=i; j++)
{
printf("%d ",a[i][j]);
}
printf(" \n");
}
return 0;
}
这个题和打印菱形很相似,大家在看完这道题,可以试试自己做一下打印菱形。只不过打印菱形时需要把空格和“*”号分开打印,计算好星号和空格所在的位置。