最大公约数,最小公倍数

107 阅读1分钟
//
// Created by someb on 2024/2/4.
//for的课后练习

#include<stdio.h>

int main(){

    /*
     * 说明:输入俩个正整数m和n,求其最大公约数和最小公倍数
     *  比如:12和20的最大公约数是4,最小公倍数是60
     */
    int m = 12,n = 20;

    int min = ( m < n ? m : n);
    //求最大公约数
    for(int i = min;i >= 1;i--){
        if(m % i == 0 && n % i ==0){
            printf("最大公约数是%d\n",i);
            break;
        }
    }
    //求最小公倍数
    int max = (m > n)? m : n;
    for(int i = max;i <= m * n;i++){
        if(i % m == 0 && i % n == 0){
            printf("最小公倍数是%d\n",i);
            break;
        }
    }


    return 0;
}

执行结果

最大公约数是4
最小公倍数是60

Process finished with exit code 0