0

我想实现一个简单的 ggT 算法,但 Xcode 让我抓狂......

int ggT(int a, int b){
    if (b==0)
        return a;

    else
        ggT(b, a%b);
}

我明白为什么会出现错误,所以我添加了一个 return -1; 最后并认为这将永远不会被退回,但每次都会被退回。

int ggT(int a, int b){
    if (b==0)
        return a;

    else{
        ggT(b, a%b);
        return -1;
    }
}

我还在另一个 IDE(Netbeans)中尝试过它,它运行良好。有人可以解释为什么这在 Xcode 中不起作用吗?

提前致谢

4

1 回答 1

0

调用函数不会自动返回结果:您需要在递归 ggT 调用之前添加 return

int ggT(int a, int b){
    if (b==0)
        return a;

    else{
        return ggT(b, a%b);
    }
}
于 2013-11-06T20:14:43.687 回答