本帖最后由 xiaolinyouni 于 2011-06-25 09:24:44 编辑

解决方案 »

  1.   


    jiecheng方法后面多了分号
      

  2.   

    两个语法错误:sum 没有初始化方法后面不能有分号
    改进:
    long对于30! 位数不够 ,改用java.math.BigDecimal  public static void main(String args[]) {
    BigDecimal sum = new BigDecimal(0);//用BigDecimal
    for (int i = 1; i <= 30; i++) {
    sum = sum.add(jiecheng(i))  ;
    }
    System.out.println(sum);
    } static BigDecimal jiecheng(int t) {
    int j;
    BigDecimal d = new BigDecimal(1);
    for (j = 1; j <= t; j++) {
    d = d.multiply(new BigDecimal(j));
    }
    System.out.println(t + " - " + d);
    return d;
    }