求两个数的最大公约数
最小公倍数第二种函数调用的方法
代码如下
#include <stdio.h>
int gcd(int a,int b);
int main()
{
int num1,num2,maxGcd;
scanf("%d %d",&num1,&num2);
maxGcd = gcd(num1,num2);
printf("%d",maxGcd);
return 0;
}
int gcd(int a,int b)
return !b ? a:gcd(b,a%b);
那么最小公倍数就可以通过 a×b/ gcd(a,b) 得到!!
代码如下
#include <stdio.h>
int gcd(int a,int b);
int gbs(int a,int b);
int main()
{
int num1,num2,maxGcd,minGbs;
scanf("%d %d",&num1,&num2);
maxGcd = gcd(num1,num2);
minGbs = gbs(num1,num2);
printf("maxGcd: %d\nminGbs: %d\n",maxGcd,minGbs);
return 0;
}
int gcd(int a,int b)
return !b ? a:gcd(b,a%b);
int gbs(int a,int b)
return (a*b)/gbs(a,b);