求n的阶乘java代码

求n的阶乘有很多种方法,可以用循环,递归,等方法

1、循环

//用循环累乘求n的阶乘
public static void main(String[] args) {
    int r = 1;
    for(int i = 5;i > 0;i--){
	r *= i;
    }
    System.out.println(r);
}

2、递归法

//递归法就n的阶乘
public int clac(int n){
	if(n == 1){
		return 1;
	}else{
		return n * clac(n-1);
	}
}
public static void main(String[] args){
    Total t = new Total();
    //这里求的是5的阶乘
    System.out.println(t.clac(5));
}

 3、其它(Scanner类)

//相对于第一种方法,这是从n往下遍历
public static void main(String[] args) {
		System.out.println("给出计算阶乘的数:");
                //用Scanner接收值,再用循环遍历
		Scanner in = new Scanner(System.in);
		int c = in.nextInt();
		int m = 1;
		for(int i =1;i < c+1;i++){
			m = m*i;
		}
		System.out.println(c + "的阶乘为:" + m);

	}

 

你可能感兴趣的:(Java基)