永发信息网

懂递归和静态变量的高手来帮我看看

答案:1  悬赏:10  手机版
解决时间 2021-08-11 10:54
  • 提问者网友:佞臣
  • 2021-08-10 19:53


 static Long result=1L;
 public static void main(String[] args){
  System.out.println("factorial="+factorial(3));
 }
 public static Long factorial(int index){
  Long fac=0L;
  if(index==1){
   return 1l;
  } 
  else{
   fac=index*factorial(index-1);
   result+=fac;//第最内层调用result=1+2*1,外层result=1+2*1+3*2*1
   System.out.println(result);  
  }
  return result; 
 }

3、2、1阶乘的结果相加,结果不对,

最佳答案
  • 五星知识达人网友:雪起风沙痕
  • 2021-08-10 21:30

按上面的输 ,结果是不是为1

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯