1.求最大公约数就是用辗转相除法即可,反复相除即可
int fun1(int a,int b)
{
int r=0;
while(b!=0)
{
r=a%b; //a与b的大小关系不影响顺序
a=b;
b=r;
}
return a;
}
2.最小公倍数等于2个数相乘除以最大公约数
int fun2(int a,int b)
{
return (a*b)/fun1(a,b);
}
3.实际调用
int main()
{
fun1(16,12);
printf("%d\n",fun1(16,12));
fun2(16,12);
printf("%d\n",(16*12)/fun1(16,12));
}