输入两个正整数m和n,求其最大公约数和最小公倍数

最小公约数:
有两整数a和b:
① a%b得余数c
② 若c=0,则b即为两数的最大公约数
③ 若c≠0,则a=b,b=c,再回去执行①

最大公倍数:
就是a*b/(最小公约数)。

#include<stdio.h>
void main()
{
    int a,b,c,r,pro;

    scanf("%d%d",&a,&b);
    pro=a*b;     

    if(a<b)    //保证a>b
    {
        a=a+b;
        b=a-b;
        a=a-b;
    }

    r=a%b;
    while(r)   
    {
        a=b;
        b=r;
        r=a%b;  
    }

    printf("%d\n",b);  //输出最大公约数
    printf("%d\n",pro/b);  //输出最小公倍数
}

猜你喜欢

转载自blog.csdn.net/weixin_41133154/article/details/78777757