C语言,用递归函数求最大公约数

Python014

C语言,用递归函数求最大公约数,第1张

#include<stdio.h>

int gcd(int a,int b)

{if(a%b==0)return b

 return gcd(b,a%b)

}

int main()

{int a,b

 scanf("%d%d",&a,&b)

 printf("%d\n",gcd(a,b))  

 return 0

}

//用递归最大公约数

//我给你简化并改了一下可以用了

#include

int

gcd(int

m,int

n)

int

main()

{

int

m,n

printf("input

m,n:\n")

scanf("%d%d",&m,&n)

printf("%d\n",gcd(m,n))

}

int

gcd(int

m,int

n)

{

if(m>n)//大于和小于只要"<"或">"就够了,不需要两个

return

gcd(m-n,n)

else

if(m

评论

0

0

0

加载更多

#include<stdio.h>

void swap(int *m,int *n){

int t

if(m <n){

t = n

n = m

m = t

}

}

int f(int m,int n){

if(m%n == 0)return n

else

return f(n,m%n)

}

int main(){

int p = 0,m = 0,n = 0

printf("请按照由大到小的顺序输入两个整数,用空格隔开:\n")

scanf("%d%d",&m,&n)

swap(m,n)

p = f(m,n)

printf("两个数的最大公约数是:%d\n",p)

return 0

}