三种方法求阶乘
/*--- 1 利用阶乘的定义求解阶乘 ---*/
#include<stdio.h>
void main()
{ int i,n;
long f=1;
scanf("%d",&n);
for(i=1;i<=n;i++)
f=f*i;
printf("%d!=%ld",n,f);
getch();
}
/*--- 2 递归方法求阶乘 --- */
#include "stdio.h"
long fact(int n)
{ long s;
if(n<=1)
s=1;
else
s=n*fact(n-1);
return s;
}
void main()
{int num;
scanf("%d",&num);
printf("%d!=%ld\n",num,fact(num));
getch();
}
/*--- 3 利用静态变量求阶乘 ---*/
#include<stdio.h>
c语言用递归函数求n的阶乘long fact(int n)
{ static long f=1;
f=f*n;
return f;
}
void main()
{ int i;
for(i=1;i<=5;i++)
printf("%d!=%ld\n",i,fact(i));
getch();
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论