从一到题目引发的关于递归的思考
def 递归函数有两个条件,但只有一个条件有返回值,造成了结果为None
关于函数的return ,我们总是以为return 就结束了,但是在递归函数中,return 只是返回给上一个函数,一直返回才到第一个函数。所以要对代买进行修改
import math import threading class myThread (threading.Thread): def __init__(self, threadID, name,num): threading.Thread.__init__(self) self.threadID = threadID self.name = name def gcd(a,b): # *************begin************# if(a<b): p=a a=b b=p c=a%b if(c==0): return b else: a=b b=c return gcd(a,b) # **************end*************# def main(): a = int(input()) b = int(input()) r = gcd(a,b) print(r) if __name__=='__main__': main()