#define N 10/* 要打印的层数 */
int main(void)
{
int arr[N] /* 用于保存生成的杨辉三角的每一行的值 */
int i, j
arr[0] = 1 /* 杨辉三角的第一层 */
/* 先把第一层打印出来 */
printf("%5d\n", arr[0])
arr[1] = arr [0] = 1//这样写是为了表明算法。
printf("%5d%5d\n", arr[0], arr[1])
/* 不断地求杨辉三角的每一层 */
for (i = 2i <Ni++) /* i代表当前层用到的arr的最大下标 */
{
arr[i] = arr[i-1] /* 把最外边的1外移一位 */
for(j = i-1j>0j--)//每一行的a[0],始终为1,不用计算。
{
/* 杨辉三角的性质就是这句 */
arr[j] = arr[j - 1] + arr[j]
}
/* 求出一行后,马上打印出此行 */
for (j = 0j <= ij++)
{
printf("%5d",arr[j])
}
printf("\n")
}
return 0
}
#include<stdio.h>void main()
{
int i,j,a[10][10]
clrscr()
for(i=0i<10i++)
{
a[i][0]=a[i][i]=1
for(j=1j<ij++)
a[i][j]=a[i-1][j-1]+a[i-1][j]
}
for(i=0i<10i++)
{
for(j=0j<20-2*ij++)
printf(" ")
for(j=0j<=ij++)
{
printf("%4d",a[i][j])
}
printf("\n")
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)