输入两个正整数,求其最大公约数。

  • Post author:
  • Post category:其他


输入两个正整数,求其最大公约## 标题数。

辗转相除法求最大公约数。

辗转相除法是一种常用的求最大公约数的方法:以小数除大数,如果能整出那么小数就是所求的最大公约数,否则就用余数来除除数,再用新除法的余数去除刚才的余数,以此类推,直到一个除法能够整除,这时作为除数的数就是所求得最大公约数。具体过程如下:

输入正整数m和n,保证m不小于n;

如果n!=0,则求r=m%n,然后m=n,n=r。

如果n=0,那么m就为最大公约数。


#include<stdio.h>

int main()

{


int m,n,r,t;

scanf(“%d %d”,&m,&n);

if(m<n)

{


t=m;

m=n;

n=t;

}

while(n!=0)

{


r=m%n;

m=n;

n=r;

}

printf(“%d\n”,m);

return 0;

}



版权声明:本文为Adong366原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。