Problem A: 递归的辗转相除法
这道题涉及两个内容 辗转相除法与递归函数
我的这个代码是我自己写的,也是初次学习C ,所以只为完成任务.
有在网上看到简单代码,实在看不懂.
这道题由于限制函数名称等,所以必然引导你使用递归函数
不进行文字描述,关于技巧还没有成熟,待我在搞几道题把
代码:
#include <stdio.h>
int digui(int a,int b){
int r;
r=a%b;
if(r==0){
return b;
}
else{
a=b;
b=r;
r=a%b;
return digui(a,b);
}
}
int gcd(int a,int b)
{
if(a<b)
{
int temp=a;
a=b;
b=temp;
}
int w=digui(a,b);
return w;
}
int lcm(int a,int b)
{
if(a<b)
{
int temp=a;
a=b;
b=temp;
}
int r=a*b;
int h=r/gcd(a,b);
}
int main()
{
int a,b;
scanf("%d %d",&a,&b);
printf("%d %d",gcd(a,b),lcm(a,b));
return 0;
}