一个正整数的阶乘是所有小于及等于该数的正整数的积,其中0的阶乘为1,自然数n的阶乘写作n!。
关于用C语言去求n的阶乘,主要有两种方法:
第一种:循环
for循环:
#include<stdio.h>
int main()
{
int n = 0;
int s = 1;
scanf("%d", &n);
for (int i = 1; i <=n; i++)
{
s = s*i;
}
printf("%d\n", s);
return 0;
}
while循环:
#include<stdio.h>
int main()
{
int n=0;
scanf("%d", &n);
int s = 1;
int i = 1;
while (i <= n)
{
s = s * i;
i++;
}
printf("%d\n", s);
return 0;
}
第二种:递归
#include<stdio.h>
int func(int x)
{
int s = x;
if (x > 1)
s = s * func(x - 1);
return s;
}
int main()
{
int n = 0;
scanf("%d", &n);
int s = 0;
s = func(n);
printf("%d\n", s);
return 0;
}