输出杨辉三角形(要求输出10行)
思路:
- 定义一个二维数组存放和输出
- 每一行第一列和对角线都是1
- 每个数是它左上方和右上方数的和
实现:
int a[10][10],i,j; //定义二维数组用来存放
for(i=0;i<10;i++) //遍历给第一列和对角线赋值1
a[i][i]=1,a[i][0]=1;
for(i=2;i<10;i++) //遍历给中间的每一个赋值
for (j=1;j<i;j++)
a[i][j]=a[i-1][j-1]+a[i-1][j];
for(i=0;i<10;i++) //遍历输出
{for(j=0;j<i+1;j++)
printf("%7d",a[i][j]);
printf("\n"); //控制换行
}