输入两个正整数m和n,求其最大公约数和最小公倍数。

//题目:输入两个正整数m和n,求其最大公约数和最小公倍数。
//求最大公约数用辗转相除法
// 最小公倍数=输入的两个数之积除于它们的最大公约数
#include<stdio.h>
int main()
{
int a,b,t,r,n;
printf("请输入两个数字:\n");
scanf("%d %d",&a,&b);//8 12
if(a<b)
{t=b;b=a;a=t;}// a=12 b=8
// printf("a=%d b=%d\n",a,b);
r=a%b;//r=4
n=a*b;//b=8*12=96 两个数的乘积
// printf("r=%d n=%d",r,n);
//辗转相除
while(r!=0)
{
a=b;//a=8
b=r;//b=4
r=a%b;//r=0 96/4=24
}
printf("这两个数的最大公约数是%d,最小公倍数是%d\n",b,n/b);

return 0;
}

测试:
输入两个正整数m和n,求其最大公约数和最小公倍数。_最小公倍数