在國中,我們就知道,楊輝三角的兩個腰邊的數都是1,其它位置的數都是上頂上兩個數之和。這就是我們用C語言寫楊輝三角的'關鍵之一。在高中的時候我們又知道,楊輝三角的任意一行都是的二項式係數,n爲行數減1。也就是說任何一個數等於這個是高中的組合數。n代表行數減1,不代表列數減1。如:第五行的第三個數就爲=6。下面是小編爲大家搜索整理的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;
}