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

#include <stdio.h>
int main()
{
	int i,a,b,j=1,k=0,gcd,lcm;
	printf("Please enter two number:\n");
	scanf("%d %d",&a,&b);
    while(1)
	{
		k=0;
		for(i=2;i<=a || i<=b;i++)
		{
			if(a%i==0 && b%i==0)
			{
				j=j*i;
				k=1; 
				a=a/i;b=b/i;
				break;
			}
		}
		if(k==0) break;
	}
	gcd=j;
	lcm=j*a*b;
	printf("gcd:%d\nlcm:%d",gcd,lcm);
}

猜你喜欢

转载自blog.csdn.net/inshixu/article/details/80344275
今日推荐