键盘录入一个整数 n,求 n 的阶乘。 n 的阶乘为 n * (n - 1) * (n - 2) * ... * 1 例:5 的阶乘为 5 * 4 * 3 * 2 * 1 输入描述: 键盘录入任意一个整数 n ,范围为 1 - 20
时间: 2023-12-31 13:06:11 浏览: 57
以下是Java语言的代码实现:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int result = 1;
for (int i = 1; i <= n; i++) {
result *= i;
}
System.out.println(result);
}
}
```
首先通过 `Scanner` 类从控制台读取输入的整数 `n`。然后初始化一个变量 `result` 为 1,从 1 循环到 `n`,每次将 `i` 乘到 `result` 中,最后输出 `result` 的值即为 `n` 的阶乘。注意阶乘的结果可能很大,需要使用大数处理方法。
相关问题
键盘录入一个整数 n,求 n 的阶乘。 n 的阶乘为 n * (n - 1) * (n - 2) * ... * 1 例:5 的阶乘为 5 * 4 * 3 * 2 * 1 输入描述: 键盘录入任意一个整数 n ,范围为 1 - 20 用C++语言
以下是用 C++ 语言实现的代码:
```cpp
#include <iostream>
using namespace std;
int main() {
int n;
cout << "请输入一个整数n:";
cin >> n;
int factorial = 1;
for (int i = 1; i <= n; i++) {
factorial *= i;
}
cout << n << "的阶乘为:" << factorial << endl;
return 0;
}
```
运行程序后,可以键盘输入一个整数 n,程序会计算 n 的阶乘并输出结果。例如,输入 5,则输出结果为:
```
请输入一个整数n:5
5的阶乘为:120
```
在Java中计算某个整数的阶乘,如n!=n*(n-1)*(n-2).....4*3*2*1,n的值从控制台录入。
可以使用递归或循环,以下是使用递归的 Java 代码:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int result = factorial(n);
System.out.println(n + "的阶乘是:" + result);
}
public static int factorial(int n) {
if (n == 1 || n == 0) {
return 1;
} else {
return n * factorial(n - 1);
}
}
}
阅读全文