编写一个Java 程序,从键盘输入正整数n,求n!。
时间: 2024-11-03 08:20:14 浏览: 25
输入两个正整数m和n求其最大公约数和最小公倍数 (2).pdf
在Java中,你可以编写一个递归函数来计算阶乘。阶乘是一个数的所有小于及等于它的正整数的积。下面是一个简单的程序示例:
```java
import java.util.Scanner;
public class FactorialCalculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个正整数:");
int n = scanner.nextInt();
// 检查输入是否为正整数
if (n < 0) {
System.out.println("请输入正整数。");
return;
}
long result = factorial(n);
System.out.printf("n! = %d\n", result);
}
// 递归计算阶乘
private static long factorial(int num) {
if (num == 0 || num == 1) { // 阶乘的基本情况:0和1的阶乘都是1
return 1;
} else {
return num * factorial(num - 1); // 递归调用,计算 num * (num - 1)!
}
}
}
```
当你运行这个程序并输入一个正整数n,它会计算并打印出n的阶乘。
阅读全文