///分别用迭代法和递归法实现阶乘(Factorial) n!=n*(n-1)!=n*(n-1)*(n-2)...2*1//迭代法_2:importjava.util.Scanner;publicclassfactorial_2{ publicstaticvoidmain(Str...
///分别用迭代法和递归法实现阶乘(Factorial) n!=n*(n-1)!=n*(n-1)*(n-2)...2*1//迭代法_2:import java.util.Scanner;public class factorial_2{ public static void main(String[] args){ System.out.print("请输入一个整数:"); Scanner n1=new Scanner(System.in); int n=n1.nextInt(); System.out.println(); System.out.print(n+"的阶乘为:"); int sum=factorial(n); System.out.print(sum); } private static int factorial(int i) { int x = 0; if ( x==1 ) { return 1; } else { int temp; temp = (int)i*factorial(i-1); return temp; } }}我正在学习Java,我在编写用迭代法实现阶乘的时候调试没有错误,但是运行结果就是不对,而且好像在Eclipse运行时候说,溢出了,但是我仔细检查了,还是没有发现那里有溢出的现象,也许是因为以前学迭代的时候没认真吧,希望各位高手能告诉我那里出错了,......最好直接编写一个简单的用“迭代法”求 N!的程序,谢谢!感激不尽
展开