不知道哪里的问题,提交显示答案错误。

img


img

#include
int main()
{
    int m,n,a,b,k,c,change;
    double result,x;
    scanf("%d %d",&m,&n);
    if(m>n)
    {
        a=m;
        b=n;
        while(a%b!=0)
        {
            c=a%b;
            a=b;
            b=c;
        }
        x=m*n;
        result=x/b;
    }
    else
    {
        change=n;
        n=m;
        m=change;
        a=m;
        b=n;
        while(a%b!=0)
        {
            c=a%b;
            a=b;
            b=c;
        }
        x=m*n;
        result=x/b;
    }
    printf("%d %g",b,result);
    return 0;
}

使用相减法找到最大公约数,再用公式法计算最小公倍数。

#include<stdio.h>
int main()
{
    int a = 0;
    int b = 0;
    int x = 0;
    int y = 0;
    scanf("%d %d", &a, &b);

    x = a;
    y = b;

    while ((a - b) != 0)
    {
        if (a>b)
            a = a - b;
        else
            b = b - a;
    }
    printf("%d \n", b, (x*y) / b);
    return 0;
}