本题要求两个给定正整数的最大公约数和最小公倍数。
输入格式:
输入在一行中给出两个正整数M和N(≤1000)。
输出格式:
在一行中顺序输出M和N的最大公约数和最小公倍数,两数字间以1空格分隔。
代码
#include <stdio.h>
int main()
{
int m,n,t,yu,bei,ji;
scanf("%d %d",&m,&n);
if (m<n)
{
t=m;
m=n;
n=t;
}
ji=m*n;
yu=m%n;
if(yu==0)
{
t=n;
bei=m;
}
else
{
while (yu!=0)
{
yu=m%n;
m=n;
n=yu;
}
t=m;
bei=ji/m;
}
printf("%d %d",t,bei);
return 0;
}
运行结果

该程序使用C语言实现,旨在求解两个正整数的最大公约数(GCD)和最小公倍数(LCM)。通过欧几里得算法找出最大公约数,然后利用GCD计算最小公倍数。输入两个不超过1000的正整数,程序将输出它们的GCD和LCM。
2118

被折叠的 条评论
为什么被折叠?



