//递归法求n!
#include <stdio.h>
float fac(int n)
{
float f;
if(n<0){printf("n<0,数据错误!");}
else if(n==0||n==1)f=1;
else f=fac(n-1)*n;
return(f);
}
main()
{
int n;
float y;
printf("输入一个正整数:");
scanf("%d",&n);
y=fac(n);
printf("%d!=%10.0f",n,y);
}
#include <stdio.h>
float fac(int n)
{
float f;
if(n<0){printf("n<0,数据错误!");}
else if(n==0||n==1)f=1;
else f=fac(n-1)*n;
return(f);
}
main()
{
int n;
float y;
printf("输入一个正整数:");
scanf("%d",&n);
y=fac(n);
printf("%d!=%10.0f",n,y);
}
该博客展示了用C语言通过递归法求n的阶乘的代码。定义了递归函数fac,对输入的n进行判断,若n小于0则提示错误,n为0或1时结果为1,其他情况递归计算。最后在主函数中获取用户输入并输出结果。
582

被折叠的 条评论
为什么被折叠?



