编辑代码

#include <stdio.h>
int main (void)
{
    int m = 0, n = 0;
    int min = 0, max = 0;

    scanf("%d %d", &m, &n);
    if(m < n)
    {
        min = m;
        max = n;
    }
    else
    {
        min = n;
        max = m;
    }

    if(m > 0 && n > 0)  // 两数是正数
    {
        for(min; min > 0; min--)
        {
            if((m % min == 0) && (n % min == 0))
            {
                printf("最大公约数是:%d\n", min);
                break;
            }
        }
    }
    else  // 两数是负数
    {
        for(max; ; max--)
        {
            if((m % max == 0) && (n % max == 0))
            {
                printf("最大公约数是:%d\n", max);
                break;
            }
        }
    }

    for(int i = 1; i <= n; i++)    // 求最小公倍数
    {
        if(((i*m)%n) == 0)
        {
            printf("最小公倍数是:%d", i*m);
            break;
        }
    }
    
    return 0;
}