欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

C语言实现杨辉三角:递归与非递归的方式

最编程 2024-08-12 09:01:14
...

本文用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;
}

输出如下:

至于非递归算法等待下一次更新。