#include<stdio.h>
//求最大公约数函数
int gcd(int a,int b)
{
int temp,r;
int v;
if(a<b)
{temp=a; a=b; b=temp;} //将大数放在a中,小数放在b
v=a*b;
r=a%b;
while(r!=0)
{
a=b;
b=r;
r=a%b;
}
return b;
}
//求最小公倍数函数
int lcm(int a,int b)
{
return (a*b)/gcd(a,b);
}
int main()
{
int x,y;
scanf("%d%d",&x,&y);
if(x<=0 || y<=0){
printf("输入有误!\n");
return -1;
}
printf("%d 与 %d的最大公约数为: %d\n",x,y,gcd(x,y));
printf("%d 与 %d的最小公倍数为: %d\n",x,y,lcm(x,y));
return 0;
}
//示例运行结果
F:\c_work>a.exe
24 36
24 与 36的最大公约数为: 12
24 与 36的最小公倍数为: 72
F:\c_work>a.exe
1 8
1 与 8的最大公约数为: 1
1 与 8的最小公倍数为: 8
温馨提示:答案为网友推荐,仅供参考