C語言程式設計如何求最大公約數,c語言程式設計求輸入兩個數的最大公約數和最小公倍數,怎麼做?

2021-03-22 07:06:36 字數 4028 閱讀 7316

1樓:河蟹蛇薈

最大公約數演算法:

(1)輾轉相除法

兩整數a和b:

① a%b得餘數c

② 若c=0,則b即為兩數的最大公約數,結束③ 若c≠0,則a=b,b=c,再回去執行①(2)相減法

兩整數a和b:

① 若a>b,則a=a-b

② 若a③ 若a=b,則a(或b)即為兩數的最大公約數,結束④ 若a≠b,則再回去執行①

(3)窮舉法:

① i= a b中的小數

② 若a,b能同時被i整除,則i即為最大公約數,結束③ i--,再回去執行②

c語言程式設計求輸入兩個數的最大公約數和最小公倍數,怎麼做?

2樓:餡嘍嘍嘍

輸入兩個正整數m和n,求其最大公約數和最小公倍數.用輾轉相除法求最大公約數 演算法描述:m對n求余為a,若a不等於0 則 m 0)

m1 = m;

n1 = n;

while (n != 0)

printf ("%d 和 %d 的最大公約數是:%d\n",m1,n1,m);

printf ("最小公倍數是:%d\n",m1*n1/m);

}輸入兩個正整數m和n,求其最大公約數和最小公倍數.用輾轉相除法求最大公約數 演算法描述:m對n求余為a,若a不等於0 則 m 0)

{ m_cup = m;

c語言程式設計如何求最大公約數

3樓:匿名使用者

源程式如下:

#include

#include

int fun_y(int,int);

int main()

int fun_y(int x,int y)return i;

}忙了半天,**分採納,謝謝了

4樓:匿名使用者

//常規方法

#include "stdio.h"

int main()

while(d2!=0);

printf("最大公約數是:%d",d1);

}//遞迴法

#include "stdio.h"

int fun(int d1,int d2)int main()

5樓:董俊錕

#include

int main()

if(num1 < num2)

while(b > 0)

printf("最大公約數是%d\n",a);

return 0;}

6樓:匿名使用者

#include

int main()

}printf("\n%d和%d的最大公約數是 %d",m,n,max);

return 0;

}int min(int x,int y)這是源**。

c語言程式設計,輸入兩個正整數m和n,求其最大公約數和最小公倍數?

7樓:匿名使用者

#include

int main()

a = num1;

b = num2;

while(b!=0)

printf("gongyueshu:%d\n",a);

printf("gongbeishu:%d\n",num1*num2/a);

}擴充套件資料:

c語言迴圈控制語句

一、while語句

1、計算while後面括號裡表示式的值,若其結果非內0,則轉容入2,否則轉3

2、執行迴圈體,轉1

3、退出迴圈,執行迴圈體下面的語句。

由於是先執行判斷後執行迴圈體,所以迴圈體可能一次都不執行。

二、do...while語句

1、執行迴圈體,轉2

2、計算while後面括號裡表示式的值,若其結果非0,則轉入1,否則轉3

3、退出迴圈,執行迴圈體下面的語句。

8樓:逮穎紹天慧

<1>用輾轉相除法求最大公約數

演算法描述:

m對n求余為a,

若a不等於0則m

<-n,n

<-a,繼續求餘否則n

為最大公約數

<2>最小公倍數

=兩個數的積

/最大公約數

#include

intmain()

{intm,

9樓:酈秀梅杞妍

用了一種比較笨的bai方法,但是du好理解,希望zhi對你有幫助。dao

#include

void

main()

//這個函式用於求最小公倍數

intmin_num(int

x,int

y)returni;}

//這個函式用於求最大公約數

intmax_num(int

x,int

y)returni;}

10樓:證喔

#include

void main ()

printf ("最大

公約數是%d\n", m);//上面的演算法n=0時daom這時的值就是最大公約數

printf ("最小公倍數是%d\n", p/m);//兩數的積除以最大公約數就是最小公倍數了

11樓:周素芹賴庚

程式設計:bai

(1)比較已給兩數大小du,選出小zhi的intx,y

if(x

>y)則y小(2)迴圈語句dao

for(i=小的那個數;i>=1;i--)如果回i能整除兩者則輸出結果答。if(

(x/i*i==

x)&&

(y/i*i

==y))

break;

printf("最大公約數是

%d\n",i);

12樓:匿名使用者

#include

int main()

else

printf("最大公約數是%d\n", m);

printf("最小公倍數是%d\n", p / m);

return 0;}

改了一下上面的

13樓:眭煜牟婉靜

最大公約數:(輾轉相除法)

調整順序

使m>=n

迴圈m=m%n;

如果m=0,則n為最大公約數,跳出迴圈。注:%表示取餘運算。

n=n%m;

如果n=0,則m為最大公約數,跳出迴圈。

next

求出最大公約數g後,用m*n/g得到

最小公倍數。

c語言程式設計_窮舉法求兩個數的最大公約數

c語言程式設計:輸入兩個正整數m和n,求它們的最大公約數。

14樓:超級

#include

void main()

c = a % b;

}printf("最大公約數:%d", b);

} // 輸入 20 60;輸出 20

15樓:註冊註冊冊

main()

a=num1,b=num2;

while(b!=0)/*輾轉取餘演算法*/printf("它們的最大公約數為:%d\n",a);

printf("它們的最小公倍數為:%d\n",num1*num2/a);/*兩數相乘除最大公約數就是最小公倍數*/}

16樓:匿名使用者

比較簡單的做法

#include "stdio.h"

void main()

17樓:四方袁走

#include

int main()

return 0;}

c語言程式設計 求最大公約數

c語言 最大公約數,c語言最大公約數和最小公倍數怎麼表示

include int main int a,b,c,m,t printf 請輸入兩個數 n scanf d d a,b if at a a b b t m a b c a b while c 0 a b b c c a b printf 最大公約數是 n d n b printf 最小公倍數是 n...

c語言用遞迴函式求最大公約數,C語言,用遞迴函式求最大公約數

說明 bai本例du是用zhi輾轉相除 dao法的遞專歸屬法 int mondivisor int a,int b if a b 0 return a 0?b a if a b return mondivisor a b,b else if a include int int m,int n int...

C語言 關於用輾轉相除法遞迴求最大公約數,下面的程式有錯誤,請幫我改一下,謝謝

38,這都不知道,我也不知道 c語言程式 設計 用輾轉相除法求兩個正整數的最大公約數 include stdio.h main printf d m 本人剛學,請多多指教。main a num1 b num2 while b 0 利用輾除法,直到專b為0為止屬 printf gongyueshu d...