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/zh-hant/n/225046.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
投稿專員的頭像投稿專員
上一篇 2024-12-09 14:42
下一篇 2024-12-09 14:42

相關推薦

發表回復

登錄後才能評論