《C语言入门100例》---第24题
作者:互联网
一、题目描述
循环输入。每组数据,给定两个非负整数 a和 b(a,b≤109),求两者的最小公倍数。当没有任何输入时,程序结束。
方法:
(1)由数学公式可以推得
最大公因数*最小公倍数=这两个数的乘积
(2)先求出最大公因数,求法看上一讲
(3)然后利用公式求出结果即可
(4)先除后乘避免乘法溢出
代码如下:
#include <stdio.h>
int gcd(int a,int b) //求最大公因数
{
if(b==0)
{
return a;
}
return gcd(b,a%b);
}
int main()
{
int a,b;
int max;
while(scanf("%d%d",&a,&b)!=EOF)
{
printf("%d\n",a/gcd(a,b)*b);
}
return 0;
}
标签:24,return,gcd,int,最小,---,公倍数,100,公因数 来源: https://blog.csdn.net/m0_62264224/article/details/122797759