/*This program can calculate the factorial of (int n).*/
#include
int factorial(int n)
{
return (n == 1)?n:factorial(n-1)*n;//recursion.
}
int main(void)
{
int n,fac;
printf("Please input the value of n:");//initialize n.
scanf("%d",&n);
fac = factorial(n)//variable fac is not necessary.
printf("The result is:%d\n",fac);
return 0;
}
扩展资料:
阶乘是定义在自然数范围里的(大多科学计算器只能计算 0~69 的阶乘),小数科学计算器没有阶乘功能,如 0.5!,0.65!,0.777!都是错误的。但是,有时候我们会将Gamma 函数定义为非整数的阶乘,因为当 x 是正整数 n 的时候,Gamma 函数的值是 n-1 的阶乘。
参考资料来源:百度百科-阶乘
没有阶乘运算符,可以用循环结构编写代码算出
int
i,s;
for(i=1,s=1;i<=N;i++)s*=i
//N为阶乘数
没有表示阶乘的符号,想算阶乘的话就用“网友采纳”中的代码吧。
高级语言里都没有阶乘运算符,要用编码实现。
C语言中阶乘可以用循环来实现
以下是一个用C语言实现5的阶乘的算法
#include
void
main()
{
int
i,t;
t=1;
i=2;
while(i<=5)
{
t=t*i;
i=i+1;
}
printf("%d\n",t);
}