勤修戒定慧熄灭贪嗔痴 2023-03-19 22:50 采纳率: 71.9%
浏览 15

递归求俩数字的大数不成功?


#include <iostream>
using namespace std;
int main() {
     long gcd1(int a,int b)
  {
      if(a%b==0)
      return b; 
  return gcd1(b,a%b);
   }
}

  • 写回答

4条回答 默认 最新

  • 追cium 2023-03-19 22:57
    关注

    参考GPT和自己的思路:

    这段代码是有问题的,因为在main函数中定义了一个函数gcd1,但是并没有调用它。而且,该函数在定义时不应该嵌套在main函数中,应该在main函数之外定义。另外,需要注意的是,当a和b较大时,该递归求最大公约数的算法可能会导致栈溢出,因此需要采用循环迭代的方法改进。

    评论

报告相同问题?

问题事件

  • 创建了问题 3月19日