题目大意:输入n,输出n!
解题思路:数据可能很大。用java的大数
代码如下:
package com.njupt.bigInteger;
import java.math.BigInteger;
import java.util.Scanner;
public class HDU_1042 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
BigInteger big ;
while(scanner.hasNextInt()){
int n = scanner.nextInt();
big = factorial(n);
System.out.println(big);
}
}
public static BigInteger factorial(int n){
BigInteger a = new BigInteger("1");
BigInteger b;
for(int i = 1 ; i <= n ; ++i){
b = new BigInteger(String.valueOf(i));//因为BigInteger的构造函数只能接受String类型的作为参数,所以要对i进行类型转换
a = a.multiply(b);
}
return a;
}
}