c++求两个正整数的最小公倍数和最大公约数 -电脑资料

电脑资料 时间:2019-01-01 我要投稿
【www.unjs.com - 电脑资料】

   

    求两个正整数m,n的最大公约数和最小公倍数代码:

    #include

    void main()

    {

    int m,n,gcd,lcm; /gcd为最大公约数,lcm为最小公倍数/

    int max,min,swap; /max为m,n中较大值,min为m,n中较小值/

    printf("输入两个正整数m和n\n");

    scanf("%d %d",&m,&n);

    max=m>n?m:n; /返回m,n中较大值给max/

    min=m

    swap=min; /较大值不能整除较小值时用得到/

    if(max%min==0)

    {

    gcd=min;

    printf("最大公约数gcd=%d",gcd);

    }

    while(swap!=0)

    {

    swap=swap-1; /往较小值下面找/

    if(max%swap==0 && min%swap==0)

    {

    gcd=swap;

    printf("最大公约数gcd=%d",gcd);

    break; /找到停止循环/

    }

    }

    lcm=m*n/gcd;

    printf("最小公倍数lcm=%d",lcm);

    }

    说明://里面为说明文字,c语言注释标识为

最新文章