C语言编程输出杨辉三角
C语言编程输出杨辉三角
悬赏分:30 |解决时间:2007-1-29 07:17 |提问者:晨曦薄雾
编写一个程序,能够输出一个由”杨辉三角”和”倒杨辉三角”(10行)构成的矩型图案.(重点)
编写一个程序,能够输出一个由”杨辉正三角”和”杨辉倒三角”(10行)构成的菱形等图案.
编写一个程序,能够输出一个由”杨辉正三角”和”杨辉倒三角”(10行)构成的平行四边形等图案.
请各位大虾帮帮忙!
最佳答案
矩型
main()
{int i,j,k=10;
int a[10][10];
clrscr();
printf("\n\n\n\n\n\n");
for(i=0;i<10;i++)
for(j=0;j<=i;j++)
{if(j==0||j==i)
a[i][j]=1;
else
a[i][j]=a[i-1][j-1]+a[i-1][j];
}
for(i=0;i<10;i++)
{for(j=0;j<=i;j++)
printf("%5d",a[i][j]);
k--;
for(j=k-1;j>=0;j--)
printf("%5d",a[k][j]);
printf("\n\n");
}
}
菱形
main()
{int i,j;
int a[10][10];
clrscr();
printf("\n\n\n");
for(i=0;i<10;i++)
for(j=0;j<=i;j++)
{if(j==0||j==i)
a[i][j]=1;
else
a[i][j]=a[i-1][j-1]+a[i-1][j];
}
for(i=0;i<10;i++)
{for(j=0;j<=10-i;j++)
printf("%2c",' ');
for(j=0;j<=i;j++)
printf("%4d",a[i][j]);
printf("\n");
}
for(i=8;i>=0;i--)
{for(j=0;j<=10-i;j++) printf("%2c",' ');
for(j=0;j<=i;j++)
printf("%4d",a[i][j]);
printf("\n");
}
}
平行四边形
int b(x,y)
int x,y;
{int p,q;
int a[10][10];
for(p=0;p<10;p++)
{a[p][0]=1;
a[p][p]=1;
}
for(p=2;p<10;p++)
for(q=1;q
a[p][q]=a[p-1][q-1]+a[p-1][q];
return(a[x][y]);
}
main()
{int i,j,s=10;
for (i=0;i<10;i++)
{
for(j=0;j<10-i;j++)
printf("%2c",'');
for(j=0;j<=i;j++)
printf("%5d",b(i,j));
s--;
for(j=s;j>=0;j--)
printf("%5d",b(s,j));
printf("\n\n");
}
}