辗转相除法c语言函数调用 c语言编程辗转相除法

C语言辗转相除法

例如用辗转相除法求a b 最大公约数(a b谁大谁小无所谓):

成都创新互联是专业的前郭网站建设公司,前郭接单;提供网站设计、成都网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行前郭网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

int GCD( int a , int b )

{

int n=a%b;

whie(n != 0) //即: while(n)

{

a = b;

b = n;

n = a % b;

}

return b; //注意这里返回的是b 不是n

}

C语言函数辗转相除法!

#include stdio.h

/*辗转相除法函数*/

int gcd_div(int a,int b)

{

if (b == 0) {

return a;

} else {

return gcd_div(b,a % b);

}

}

/*更相减损法函数*/

int gcd_sub(int a,int b)

{

int ma,mb;

ab?(ma=a,mb=b):(ma=b,mb=a);

if (mb == 0) {

return ma;

} else {

return gcd_sub(ma-mb,mb);

}

}

int main()

{

int a = 28,b = 21;

printf("最大公约数(减法):(%d %d)%d\n",b,a,gcd_sub(b,a));

printf("最大公约数(除法):(%d %d)%d\n",b,a,gcd_div(a,b));

return 0;

}

辗转相除法c语言代码

辗转相除法用来求两个数的最大公约数,代码如下:

#include stdio.h

#include stdlib.h

int main()

{

int a, b,r;

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

while(b!=0)//当其中一个数为0,另一个数就是两数的最大公约数

{

r = a%b;

a = b;

b = r;

}

printf("Greatest Common Divisor: %d\n", a);

system("pause");

}

运行结果:


当前标题:辗转相除法c语言函数调用 c语言编程辗转相除法
标题URL:http://azwzsj.com/article/hehdeo.html