1. 程式人生 > >楊輝三角的C語言實現(遞迴與非遞迴)

楊輝三角的C語言實現(遞迴與非遞迴)

本文用C語言程式碼實現楊輝三角

遞迴演算法依據於f(m,n)=f(m-1,n)+f(m-1,n-1) 其中(m,n)為楊輝三角第m行第n個元素

演算法程式碼如下:  

#include <stdio.h>


//遞迴函式
int func(int m,int n)
{
    if(n==0||n==m)//遞迴終止條件
    return 1;
    return func(m-1,n)+func(m-1,n-1);//核心程式碼
}

int main(void) {

int m,i,j;
m=6;//列印前6行楊輝三角
for(i=0;i<=m;i++)
{
    for(j=0;j<m-i;j++)
    printf("   ");
    for(j=0;j<=i;j++)
    printf("%6d",func(i,j));
    printf("\n");
}
	return 0;
}

輸出如下:

至於非遞迴演算法等待下一次更新。