c语言从小到大排序编程:最大公约数c语言算法代码

输入两个正整数m和n,求其最大公约数和最小公倍数

问题分析:

输入两个正整数m和n,输出最大公约数和最小公倍数

最大公约数是几个数共有的因数最大的一个数字,8和12的最大公约数是4,用辗转相除法可以实现,其算法过程为:

设两数为a,b设其中a做被除数,b做除数,temp为余数

大数放a中,小数放b中;求a/b的余数;

若temp=0则b为最大公约数;

如果temp!=0则把b的值给a,temp的值给b;

最小公倍数=输入的两个数之积除于它们的最大公约数

算法描述:

C语言最大公约数和最小公倍数

代码实现:

#include <stdio.h>
int main()
{
    int a,b,temp,m,t;
    printf("请输入两个数:n");
    scanf("%d%d",&a,&b);//输入两个数a,b 
    if(a<b)//如果a小于b,利用中间变量t进行互换 
    {
        t=a;
        a=b;
        b=t;
    }
    m=a*b;//m为a,b乘积 
    temp=a%b;//temp为除数 
    while(temp!=0)
    {
        a=b;
        b=temp;
        temp=a%b;
    }
    printf("最大公约数是:n%dn",b);
    printf("最小公倍数是:n%dn",m/b);
    
    return 0; 
}

运行结果:

C语言最大公约数和最小公倍数

原创文章,作者:投稿专员,如若转载,请注明出处:https://www.506064.com/n/225046.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
投稿专员的头像投稿专员
上一篇 2024-12-09 14:42
下一篇 2024-12-09 14:42

相关推荐

发表回复

登录后才能评论