网站首页 语言 会计 电脑 医学 资格证 职场 文艺体育 范文
当前位置:书香门第 > 计算机 > C语言

C语言杨辉三角是什么

栏目: C语言 / 发布于: / 人气:7.28K

在初中,我们就知道,杨辉三角的两个腰边的数都是1,其它位置的数都是上顶上两个数之和。这就是我们用C语言写杨辉三角的'关键之一。在高中的时候我们又知道,杨辉三角的任意一行都是的二项式系数,n为行数减1。也就是说任何一个数等于这个是高中的组合数。n代表行数减1,不代表列数减1。如:第五行的第三个数就为=6。下面是小编为大家搜索整理的C语言杨辉三角是什么,希望能给大家带来帮助!更多精彩内容请及时关注我们应届毕业生考试网!

C语言杨辉三角是什么

#include

#include

int main()

{

int i,j,k;

int line;

int *prev, *next;

printf("输入要查看杨辉三角的行数(大于2):");

scanf("%d",&line);

if(line < 2)

{

printf("行数小于2,Goodbye!n");

exit(1);

}

for(i=1; i<=line; i++) //前两行的打印

printf(" ");

printf("%6dn",1);

for(i=1; i<=line-1; i++)

printf(" ");

printf("%6d%6dn",1,1);

prev = malloc(2*sizeof(int));

prev[0] = 1;

prev[1] = 1;

for(i=3; i<=line; i++) //从第三行开始打印

{

next = malloc(i*sizeof(int));

next[0] = 1;

next[i-1] = 1;

for(j=line; j>=i; j--) //外部空格

{

printf(" ");

}

printf("%6d",1);

for(k=2; k

{

next[k-1] = prev[k-2] + prev[k-1];

printf("%6d",next[k-1]);

}

}

printf("%6dn",1);

free(prev);

prev = next;

}

free(next);

return 0;

}