有需要杨辉三角的同学进来取代码(这是纯自己的思维写的,没借助外力,所以也请各位兄弟拍砖指正)
程序代码:#include <stdio.h>
//本程序演示了用二维数组来输出一个9行9列的杨辉三角
int main(void)
{
int n=9;
int yhsj[9][9];
int i,j;
/////为二维数组赋初值
for(i=0;i<n;i++)
for(j=0;j<n;j++)
{
yhsj[i][j]=0;
}
//以下用杨辉三角公式填充二维数组
yhsj[0][0]=1;
for(i=1;i<n;i++)
for(j=0;j<=i;j++)
{
if(j==0) yhsj[i][j]=yhsj[i-1][j]; else //处理数组第一列
if(j==n-1) yhsj[i][j]=yhsj[i-1][j-1];else //处理数组最后一列
yhsj[i][j]=yhsj[i-1][j-1]+yhsj[i-1][j];
}
//以下用于屏幕输出二维数组
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
if(yhsj[i][j]>0)
{
printf("%4.0d",yhsj[i][j]); //原计划输出一个等腰三角形
//但是输出效果不尽人意,所以改输直角三角形了
}
}
printf("\n");
}
return 0;
}
/*
输出效果图
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
*/[ 本帖最后由 wp231957 于 2012-11-28 10:45 编辑 ]


