辗转相除求最大公约数与最小公倍数

#include<stdio.h>

int gcd(int a,int b)

{

  if(b!=0) gcd(b,a%b);

  else return a;

}

int lcm(int a,int b)

{

 return a*b/gcd(a,b);  //a/gcd(a,b)*b防溢出

}

int main()

{

  int a,b;

 while(scanf("%d%d",&a,&b)!=EOF){

  printf("%d %d\n",gcd(a,b),lcm(a,b));

 }

 return 0;

}

posted @ 2017-06-14 21:13  yzm10  阅读(259)  评论(0编辑  收藏  举报