C语言:既能求最大公约数又能求最小公倍数的函数


int gygb(int a,int b,int m)
{
    int t,c,gy,gb;
    if(a>b) t=a,a=b,b=t;
    for(c=a;c>=1;c--)
    {
        if(b%c==0 && a%c==0) 
        
        {
            if(m==0) return c;
            else break;
        
        }
    }
    if(m==1) return ((a*b)/c);

}
int main()
{
    int a,b,c,d;
    scanf("%d %d",&a,&b);
    if(a>b) c=a,a=b,b=c;
    printf("%d ",gygb(a,b,1));
    return 0;
}