當前位置:菜譜大全網 - 減脂餐食譜 - 用C語言求兩個數最大公約數的三種算法

用C語言求兩個數最大公約數的三種算法

1,減法

#包含& amplt;stdio.h & ampgt;

int main()

{

int a,b;

int c = 0;//計數器

While(1)//循環判斷功能

{

Printf("輸入兩個數求最大公約數:");

scanf("%d%d ",& amp壹,& ampb);

而(a!=b)

{

如果(a & ampgt;b)

a = a-b;

其他

b = b-a;

c++;

}

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

printf("%d\n ",c);

}

返回0;

}

操作效果:

2、翻來覆去分工:

#包含& amplt;stdio.h & ampgt;

int a,b,temp

int Division(){

Printf("請輸入兩個數字(a,b):\ n ");

scanf("%d,%d ",& amp壹,& ampb);

如果(a & amplt;b){

temp = a;

a = b;

b =溫度;

}

而(a%b!=0){

temp = a % b;

a = b;

b =溫度;

}

Printf("最大公約數是:%d\n ",b);

返回0;

}

3.窮舉法

#包含& amplt;stdio.h & ampgt;

int main()

{

int a,b,c;

int d = 0;//計數器

while(1)

{

Printf("輸入兩個數求最大公約數:");

scanf("%d%d ",& amp壹,& ampb);

c =(a & amp;gt;b)?乙:甲;//三方運算符

而(a%c!=0||b%c!=0)

{

c-;

d++;

}

Printf("最大公約數是:%d\n ",c);

printf("%d\n ",d);

}

返回0;

}