醉林疯的OJ 1063: 最大公约与最小公倍

1063: 最大公约与最小公倍
题目描述
输入两个正整数,输出其最大公约数和最小公倍数。

输入
输入两个正整数n和m(n,m<=1000000)。输入保证最终结果在int范围内。
输出
输出两个整数,用空格隔开。表示m和n的最大公约数和最小公倍数。
样例输入 Copy
4 6
样例输出 Copy
2 12
提示
注意运算过程中的溢出问题

int main()
{
     

int m,n,max,min,yu,bei;
scanf("%d %d",&m,&n);
if(m>n)
  {
     
      max=m;min=n;
  }
  else
  {
     
      max=n;min=m;
  }
  yu=max%min;
while(yu>0)
{
     
  max=min;min=yu;
  yu=max%min;
}
printf("%d ",min);
m=m/min;n=n/min;
bei=m*n*min;
printf("%d",bei);
return 0;
}

仅供参考!

你可能感兴趣的:(OJ,c语言)