#include<stdio.h>
int main()
{
int a[10][10];//题干要求10行内
int i,j,k,n;
scanf("%d",&n);//输入行数
for(i=0;i<n;i++)
{
a[i][i]=1;//将对角线赋值为1
a[i][0]=1;//将第一列赋值为1
}
for(i=2;i<n;i++)//赋值不是1的部分,从第三行开始
{
for(j=1;j<i;j++)//每行从第二个数到倒数第二个数都不是1
{
a[i][j]=a[i-1][j-1]+a[i-1][j];//每个数等于它上方的数与左上方的数之和
}
}
for(i=0;i<n;i++)//输出n行数
{
for(j=0;j<=i;j++)//没行数都有i个
{
printf("%4d",a[i][j]);//可以理解成输出矩阵左下角的数
}
printf("\n");//每行的最后输出\n换行
}
return 0;
}
二维数组——杨辉三角
最新推荐文章于 2024-07-14 19:56:17 发布