#include "stdio.h"
int main()
{
int m, n;
int k=0, a=0,b=0;
int temp=0;
printf("请输入两个正整数:\n");
while(1)
{
scanf("%d %d",&m, &n);
if (m<n)
{
temp=m;
m=n;
n=temp;
}
if (m%n==0)
{
printf("%d和%d的最大公约数为:%d\n", m, n, n);
printf("%d和%d的最小公倍数为:%d\n", m, n ,m);
}
else
{ //求m,n能最大整除的数,即最大公约数
for (k=1;k<n;k++)
{
if (m%k==0&&n%k==0)
{
a=k;
}
}
b=m*n/a;//求最小公倍数
printf("%d和%d的最大公约数为:%d\n", m, n, a);
printf("%d和%d的最小公倍数为:%d\n", m, n ,b);
}
}
}
求两个正整数的最大公约数与最小公倍数
最新推荐文章于 2019-03-17 12:24:01 发布