求20以内的N!
递归方法:
public static int factorial(int n) {
if(n==1) {
return 1;
}else {
return n*factorial(n-1);
}
}
非递归:
import java.util.Scanner;
public class Factorial {
public String factorial(int n) {
int result = 1;
for(int i=1;i<=n;i++) {
result = result*i;//result*=i;
}
String s = String.valueOf(result);
return s;
}
}
测试主函数:
public static void main(String[] args) {
Factorial f = new Factorial();
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
System.out.println(f.factorial(n));
//System.out.println(f.factorial(3));
}