求a和b的最大公约数

2017-01-14 19:43:54来源:cnblogs.com作者:祖旭明人点击

第七城市

题目:求a和b的最大公约数

分析:首先我们要知道最大公约数是什么,就是指两个或多个整数共有约数中最大的一个。好了,知道了最大公约数是什么,就可以求解它了,那么就相当于比较俩个数的约数,取其相等的最大的一个就对了,是吧?约数是啥???约数就是能把a或者b整除的数呗~

好了~一起来看看代码吧~

代码:

 1 #include<stdio.h> 2 void gcd(long int a,long int b)       //子函数求gcd 3 { 4     long int i,t=0,j=0,k=0,max,q=0; 5     long int x[256],y[256];          //x[]存放第一个数的除数,y[]存放第二个数被第一个除数整除的数 6     for(i=a;i>0;i--)                //x[] 7     { 8         if(a%i==0) 9         x[j++]=i;10         t++;11     }12     for(i=0;i<t;i++)                   //y[]13     {14         if(b%x[i]==0)15         y[k++]=x[i];16         q++;17     }18     max=y[0];                           //选择最大的一个19     for(i=0;i<q;i++)20     {21         if(max<y[i])22         {23             max=y[i];24         }25     }26     printf("gcd=%ld/n",max);          //输出27 }28 void main()29 {30     long int a,b;31     long int x[100],y[100];32     while(1)33     {34     printf("please enter two number between 0 to 255 /n");    //输入俩个数35     scanf("%ld%ld",&a,&b);36     gcd(a,b);37     }38 }

简单的看几个答案吧:

是不是很容易呢?

欢迎联系我的qq:2516985331

一起学习~

第七城市

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台