用递归方法求n的阶乘【C语言实现】

用递归方法求n的阶乘【C语言实现】#include<stdio.h>intmain(){ longfac(intn); intn,y; printf(“inputanintegernumber:”); scanf(“%d”,&n); y=fac(n); printf(“%d!=%ld\n”,n,y); return0;}longfac(intn){ l…

大家好,又见面了,我是你们的朋友全栈君。

? 喜欢我的文章,记得点赞?+评论?+收藏⭐️+关注?の,你的反馈就是我不断更新的动力!? QQ/Wechat:235 40008 备注:CSDN ?

用递归方法求阶乘n! C语言实现代码如下:

#include <stdio.h>
int main()
{ 
   
	long fac( int n );
	int n, y;
	printf( "Please input an integer number:" );
	scanf( "%d", &n );
	y = fac( n );
	printf( "%d!=%ld\n", n, y );
	return(0);
}

long fac( int n ) //递归函数
{ 
   
	long f;
	if ( n < 0 )
		printf( "n < 0, Data error!" );
	else if ( n == 0, n == 1 )  //当调用到最深层时
		f = 1;
	else f = fac( n - 1 ) * n;
	return(f);
}

再给大家看2张比较形象的图帮助理解吧!


用递归方法求n的阶乘【C语言实现】用递归方法求n的阶乘【C语言实现】

? 喜欢我的文章,记得点赞?+评论?+收藏⭐️+关注?の,你的反馈就是我不断更新的动力!? QQ/Wechat:235 40008 备注:CSDN ?

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/136614.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号