求两个数的最大公约数

来源:互联网 发布:沈世钊 三大弟子 知乎 编辑:程序博客网 时间:2024/06/14 09:12

         求两个数的最大公约数有多种算法,我在这里用辗转相除法来解决这道题目,还有一种算法是更相减损法,有兴趣的朋友可以了解一下。辗转相除法的具体做法是:用较小数除最大数,再用出现的余数(第一余数)去除除数,再用出现的余数(第二余数)去除第一余数,如此反复,知道最后余数为0为止。

 #include<stdio.h>

int main()
{
int m, n, t;//t为临时变量
scanf("%d%d", &m, &n);
if(m%n!=0)
{
t=m%n;//将余数赋值给t
m=n;//将n赋值给m
n=t;//将t中存放的余数赋值给n
}
printf("%d\n",n);
return 0;
}