#include<stdio.h>
//编写最大公约数GCD函数
/*********Begin*********/
int GCD(int a,int b)
{
int GCD;
int min;
int i;
if(a<b)
{
min=a;
}
else{
min=b;
}
for(i=min;i>=2;i--)
{
if(a%i==0&&b%i==0)
{
break;
}
}
GCD=i;
return GCD;
}
/*********End**********/
//编写最小公倍数LCM函数
/*********Begin*********/
long long LCM(int a,int b)
{
long long LCM;
int max;
int i;
if(a>b)
{
max=a;
}
else{
max=b;
}
for(i=max;i>=max;i++)
{
if(i%a==0&&i%b==0)
{
break;
}
}
LCM=i;
return LCM;
}
/*********End**********/
int main(void)
int a,b;
scanf("%d %d",&a,&b);
int s;
long long x;
if(a>0&&b>0)
{
s=GCD(a,b);
x=LCM(a,b);
printf("%d %lld",s,x);
}
else{
printf("Input Error");
}
return 0;
}
输入231232 3211222
为什么最小公倍数为负数,其他都是正确的