#include <stdio.h> //包含标准库的信息
int main(void) //每个程序都从main函数的起点开始执行
{
int p,r,m,n,temp;
printf("请输入两个正整数n,m:");
scanf("%d,%d",&n,&m);
if(n<m){ //若n<m则交换俩数的值,temp作为中间变量,让n作为最大的值
temp = n; //n的值赋给temp
n = m; //m的值赋给n
m = temp; //temp的值再赋给m
}
p = n * m;
/*碾转相除法
* n为俩数中最大的数,n%m得余数r,再把m赋给n,余数r赋给m。然后继续执行循环,直到余数为0结束循环
* */
while (m != 0)
{
r = n % m; //n%m的余数赋给r
n = m; //m值赋给n
m = r; //r值赋给m
}
printf("它们的最大公约数为:%d\n",n);
printf("它们的最小公约数为:%d\n",p/n);//两数相乘的积除以这俩个数的最大公约数就是最小公倍数
return 0;
}
运行结果: