java 输入一个数 N, 求N! (N的阶乘) N!=1*2*3*…*N 输入 n的阶乘为:?
时间: 2024-10-05 15:01:24 浏览: 30
Java实现n位数字的全排列
在Java中,你可以使用循环结构如for或while来计算给定整数N的阶乘(N!)。下面是一个简单的示例程序:
```java
import java.util.Scanner;
public class FactorialCalculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个非负整数N:");
int N = scanner.nextInt();
long factorial = calculateFactorial(N);
System.out.printf("N的阶乘为:%d\n", factorial);
}
// 计算阶乘的方法
private static long calculateFactorial(int num) {
if (num == 0 || num == 1) {
return 1; // 阶乘的基本情况,0和1的阶乘都是1
} else {
return num * calculateFactorial(num - 1); // 递归调用计算剩余部分的阶乘
}
}
}
```
在这个程序中,用户会被提示输入一个整数N,然后`calculateFactorial`函数会计算并返回N的阶乘。注意我们使用了`long`数据类型来存储结果,因为阶乘的结果可能会非常大。
阅读全文