回复 7楼 hellovfp
#include <stdio.h>void main()
{
long int a, b, m, n, temp = 1, c, d;
printf ( "请输入两个整数:m 和 n \n" );
scanf ( "%d %d", &m, &n );
d = m * n;
//欧几里得算法,又称辗转相除法,求最大公约数。
while(temp)
{
a = m > n ? m : n; //a为m、n中的最大值
b = m <= n ? m : n; //b为m、n中的非最大值
temp = a % b; //temp为a、b的余数
m = temp;
n = b;
}
printf ( "最大公约数为:%d\n", b );
c = d / b;
printf ( "最小公倍数为: %d\n", c ); //两个数的乘积除以最大公约数得最小公倍数。
}