用一维数组就搞定了。
#include "stdafx.h"
#include
void main()
{ int i,j,a[17]={0,1},l,r;
for(i=1;i<=6;i++)
{ l=0;
for(j=1;j<=i;j++)
{ r=a[j];
a[j]=l+r; //每个数是上面两数之和
l=r;
printf("%5d",a[j]); //输出杨辉三角
}
printf("\n");
}
}
#include
int main()
{
int a[10][10],i,j;
for(i=0;i<10;i++)
{
for(j=10;j>=i;j--)
printf("%2c",' ');/*两个空格*/
for(j=0;j<=i;j++)
{
if(i==j||j==0)
a[i][j]=1;
else
a[i][j]=a[i-1][j]+a[i-1][j-1];
printf("%3d ",a[i][j]); /*%3d后一个空格*/
if(i==j)
printf("\n");
}
}
return 0;
}
把所有10改成6