C语言用欧几里得算法定义的求最大公约数的函数没看懂,哪位大神能解释一下?具体到每一步骤。

int gcd(int x,int y){ int t; if(x<y) {t=x;x=y;y=t;} while(y!=0) {t=x%y;x=y;y=t;} return x;}
2024-11-27 04:29:14
推荐回答(1个)
回答1:

if(x
while(y!=0) {t=x%y;x=y;y=t;} //算法核心,首先用x模y,取得余数,然后每次用除数模余数,直到整除为止