c语言中如何求两个数的最大公约数和最小公倍数?
展开全部
直接编写两个函数就行了!!
#include
int
yueshu(int
m,int
n)
{
int
t;
if(m>n)
t=m,m=n,n=t;
//替换,保证m为较大的数
while(n!=0)
{
t=m%n;
m=n;
n=t;
}
return
m;
}
int
beishu(int
m,int
n)
{
return
m*n/yueshu(m,n);
//最小公倍数即为两个数的乘积除以最大公约数
}
main()
{
int
m,n,s,t;
while(scanf("%d%d",&m,&n))
{
s=yueshu(m,n);
printf("%d\n",s);
t=beishu(m,n);
printf("%d\n",t);
}
}
#include
int
yueshu(int
m,int
n)
{
int
t;
if(m>n)
t=m,m=n,n=t;
//替换,保证m为较大的数
while(n!=0)
{
t=m%n;
m=n;
n=t;
}
return
m;
}
int
beishu(int
m,int
n)
{
return
m*n/yueshu(m,n);
//最小公倍数即为两个数的乘积除以最大公约数
}
main()
{
int
m,n,s,t;
while(scanf("%d%d",&m,&n))
{
s=yueshu(m,n);
printf("%d\n",s);
t=beishu(m,n);
printf("%d\n",t);
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询