您的位置:首页 > 其它

求两个数的最大公约数和最小公倍数

2014-02-24 20:46 302 查看
#include<stdio.h>

int qzdgys(int m,int n)			/*求最大公约数*/
{
int min;
if(m<=0||n<=0)
return -1;
if(m>n)					/*取输入的两个数中最小的数赋给min*/
min=n;
else
min=m;
while(min)
{
if(m%min==0 && n%min==0)	/*分别对min取余*/
return min;			/*返回最大公约数*/
min--;
}
return -1;
}
int qzxgbs(int m,int n)
{
int max;
if(m<=0||n<=0)
return -1;
if(m>n)						/*将m和n两个数中最大的数赋给max*/
max=m;
else
max=n;
while(max)
{
if(max%m==0 && max%n==0)	/*求最小公倍数*/
return max;
max++;
}
return -1;
}
void main()
{
int m,n;
printf("请输入两个数,求这两个数的最大公约数和最小公倍数!\n");
scanf("%d %d",&m,&n);
printf("%d和%d的最大公约数是%d\n",m,n,qzdgys(m,n));
printf("%d和%d的最小公倍数是%d\n",m,n,qzxgbs(m,n));
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: