本文介绍了如何跟踪递归?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在网上看到这段代码,但我想问的是程序是如何得出 12 的答案的?

I saw this code online but what I am asking is how did the program come up with an answer of 12 ?

我对程序进行了跟踪,我只得出了 6 的答案.

I did a tracing of the program, and I only come up with an answer of 6 .

为什么答案是 12 ?

输入是 a=6b=6.

这是代码:

public static int addxy(int a, int b)
{
    if (a==0)
        return b;
    else if (b==0)
        return a;
    else
        return 1 + addxy(a, b-1);
}

推荐答案

  • addxy(6,6)
  • 1+addxy(6,5)
  • 1+1+addxy(6,4)
  • 1+1+1+addxy(6,3)
  • 1+1+1+1addxy(6,2)
  • 1+1+1+1+1+addxy(6,1)
  • 1+1+1+1+1+1+addxy(6,0) = 12
  • 这篇关于如何跟踪递归?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-19 00:31