满意答案
r285446511
2014.10.05
采纳率:44% 等级:9
已帮助:564人
#include
void main()
{
int m(int x,int y);
int a,b,t,p,q;
printf("请输入两个正整数:\n");
scanf("%d,%d",&p,&q);
if (p==q)
{
printf("最大公约数和最小公倍数均为:%d\n",p);
}
else if(p
{
t=p;
p=q;
q=t;
a=m(p,q); //调用一个函数
b=p*q/a ; //两个数的乘积等于它们最大公约数和最小公倍数的乘积
printf("最大公约数为:%d\n",a);
printf("最小公倍数为:%d\n",b);
}
else
{
a=m(p,q); //同上
b=p*q/a;
printf("最大公约数为:%d\n",a);
printf("最小公倍数为:%d\n",b);
}
}
//用辗转相除法求最大公约数
# include
int m(int x,int y)
{
int z;
while(y!=0)
{
z=x%y;
x=y;
y=z;
}
return(x) ;
}
01分享举报