package top.gaojc.test;
import java.util.Scanner;
public class Demo_04 {
// 递归阶乘
public static void main(String[] args) {
// 键盘录入
Scanner sc = new Scanner(System.in);
System.out.print("请您输入需要求出阶乘的数值:");
int jc = sc.nextInt();
// 调用方法 定义变量接收阶乘返回值的乘积
int sum = getJc(jc);
// 打印结果
System.out.println(sum);
}
// 定义方法
private static int getJc(int jc) {
// 递归头 如果jc==1 返回1
if (jc == 1) {
return 1;
} else {
// 递归体 这里如果传入数字不是1,那么就会调用自身,只要不等于1 就会一直调用
// jc * jc-1 * jc-1-1 * jc-1-1-1......
return jc * getJc(jc - 1);
}
}
}