求a和b的最大公约数

2018-06-18 04:09:30来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

题目:求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

一起学习~

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:#北大poj#1001Exponentiation求幂

下一篇:ffmpeg官方例程3学习-给视频播放加上声音