文章目录
求最大公约数和最小公倍数
#include<stdio.h>
int gcd(int m,int n);//找最大公约数
void find_max(int *m,int *n,int a,int b);//将输入的较大数放在m位置上
int main(){
int a,b,m,n;
printf("请输入两个数字:");
scanf("%d %d",&a,&b);
find_max(&m,&n,a,b);
// printf("m=%d,n=%d",m,n);
int x= gcd(m,n);
printf("最大公约数为:%d\n",x);
printf("最小公倍数为:%d\n",(m*n)/x);
return 0;
}
void find_max(int *m,int *n,int a,int b){
if(a>b){
*m=a;
*n=b;
} else{
*m=b;
*n=a;
}
}
int gcd(int m,int n){
if(m%n==0)
return n;
else
return gcd(n,m%n);
}