[讨论]关于用C++实现杨辉三角形
用二维数组实现一个杨辉三角形,并显示出来.如下,显示一个10行的杨辉三角.
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
1 9 36 84 126 126 84 36 9 1
下面是自己编的一个程序,总觉得这个程序有点复杂,想在这里请教一下各位高手,有没有更简单一些的.
由于本人水平有限,改了好久还是改不好.希望大家帮助.谢谢了.
#include<stdio.h>
int main()
{
int num[10][10]={1};
int i,j;
printf("%4d",num[0][0]);
for(i=1;i<=9;i++)
{
printf("\n");
for(j=0;j<=i;j++)
{
if(j>=1&&j<=i-1)
{
num[i][j]=num[i-1][j-1]+num[i-1][j];
printf("%4d",num[i][j]);
}
if(j==0)
{
num[i][j]=num[i-1][j];
printf("%4d",num[i][j]);
}
if(j==i)
{
num[i][j]=num[i-1][j-1];
printf("%4d",num[i][j]);
}
}
}
printf("\n");
return 0;
}