这次是被彻底的无语了,由于对java语言的不熟悉,很对简单的操作都是无计可施,还好上网查了一下一些函数的API,熟悉了相关的操作。只能惊叹java自带的类还是很强大的。代码如下:
import java.math.BigDecimal; import java.util.Locale; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); BigDecimal a, res; int exp; while (in.hasNextBigDecimal()) { res = BigDecimal.ONE; a = in.nextBigDecimal(); exp = in.nextInt(); for (int i = 1; i <= exp; ++i) { res = res.multiply(a); } res = res.stripTrailingZeros(); // 先去掉后导的零 String ss = res.toPlainString(); // 再转化为普通的字符串 if (ss.indexOf("0") == 0) { // 再判定是否整数部分为零 ss = ss.substring(1); // 如果整数部分为零,就减去前面的"0" } System.out.println(ss); } } }