C言語初學習(4)。本站提示廣大學習愛好者:(C言語初學習(4))文章只能為提供參考,不一定能成為您想要的結果。以下是C言語初學習(4)正文
標題:求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
一同學習~