输入一个正整数,输出该数的阶乘。用JAVA怎么写。求代码。

 我来答
狂吊酷帅拽霸天
2015-12-14 · TA获得超过116个赞
知道答主
回答量:34
采纳率:0%
帮助的人:19.4万
展开全部

源代码:

package test;

public class 阶乘 {
    public static int jieCheng(int i){
        return (i==1)?1:jieCheng(i-1)*i;
    }    
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        System.out.println(jieCheng(3));
        System.out.println(jieCheng(4));
    }

}

shangke7788
推荐于2017-09-29 · 超过13用户采纳过TA的回答
知道答主
回答量:37
采纳率:0%
帮助的人:29.3万
展开全部
import java.util.Scanner;
import java.math.BigInteger;
public class Main {
    public static void main(String[] args) {
        new Main().start();
    }
    public void start() {
        Scanner in = new Scanner(System.in);
        while (in.hasNext()) {
            int n = in.nextInt();
            if (n < 0) { // 负数 退出循环
                break;
            }
            BigInteger ans = BigInteger.ONE;
            for (int i = 1; i <= n; i++) {
                ans = ans.multiply(BigInteger.valueOf(i));
            }
            System.out.println(ans);
        }
    }
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
BigWhiteMouse
2015-12-14 · TA获得超过4775个赞
知道大有可为答主
回答量:7298
采纳率:42%
帮助的人:3275万
展开全部
书上有代码,就是用递归函数调用即可。

public long myJie(long n){
if (1==n){
return 1;
}
else{
return n*myJie(n-1);
}
}
更多追问追答
追答
初始调用时确保n>0, n不能太大,也需要检测一下。
书上的函数头是
public static long myJie(int n){

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式