编辑代码

#include <stdio.h>
#define MAX(x,y) ((x)>=(y)?(x):(y))
#define MIN(x,y) ((x)<(y)?(x):(y))
#if 0
int gcd(int a,int b)
{
    printf("a %d b %d\n",a,b);
    while(a!=b)
    {
        if(a>b)
        {
            a = a-b;
        }
        else if(a<b)
        {
            b = b-a;
        }
       // printf("a %d b %d\n",a,b);
    }
    return b;
}
#else
int gcd(int m,int n)
{
    int a = MAX(m,n);
    int b = MIN(m,n);
    int t;
    do
    {
        t = a%b;
        a = b;
        b = t;
    }while(t!=0);
    return a;
}
#endif
int main () {
    //JSRUN引擎2.0,支持多达30种语言在线运行,全仿真在线交互输入输出。 
    int a;
    int b;
    scanf("%d%d",&a,&b);
    int c = gcd(a,b);
    int d = a*b/c;
    printf("gcd %d %d\n",c,d);
    return 0;
}