
亲测可用
long jiecheng(int x)
{
long int i,k=1
for(i=1i<=xi++)
k=k*i
return k
}
int main()
{
long int j,k=0
int i
for(i=1i<=20i++)
{
j=jiecheng(i)
k+=j
}
printf("%ld\n",k)
}
输出的结果是2561327494111820313
扩展资料:
一个正整数的阶乘(factorial)是所有小于及等于该数的正整数的积,并且0的阶乘为1。自然数n的阶乘写作n!。1808年,基斯顿·卡曼引进这个表示法。
亦即n!=1×2×3×...×n。阶乘亦可以递归方式定义:0!=1,n!=(n-1)!×n。
计算方法:
大于等于1:
任何大于等于1 的自然数n 阶乘表示方法:n! = 1×2×3×...×(n-1)n或n! = n×(n-1)!
0的阶乘:0!=1。
参考资料:百度百科——阶乘
按照你的要求编写的求阶乘的Java程序如下 \x0d\x0aimport java.util.Scanner\x0d\x0apublic class DDD {\x0d\x0apublic static void main(String[] args) {\x0d\x0aSystem.out.print("请输入一个正整数(1~10)")\x0d\x0aScanner sc=new Scanner(System.in)\x0d\x0aint n=sc.nextInt()\x0d\x0aif(n10){\x0d\x0aSystem.out.println("无效数据!")\x0d\x0areturn\x0d\x0a}\x0d\x0aSystem.out.print(n+"!=")\x0d\x0aint result=1\x0d\x0afor(int i=1i 回答于 2022-11-16按照你的要求编写的n的阶乘的Java程序如下
public class Factorial{
public int foo(int x){
if(x==0 || x==1){
return 1
}else{
return x*foo(x-1)
}
}
public static void main(String[] args){
int n=6
Factorial f=new Factorial()
System.out.println(f.foo(n))
}
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)