首先先明确什么是最大公约数,最大公约数是指:a、b两个数的共同的因子中最大的一个,5的因子有1和5,7的因子有1和7,因此两者的最大公约数就是1.
思路:
1、最大公约数是a、b两个数的共同的因子c,所以两者都能够除尽c,可知余数为0,此时就可以用求余操作符“%”,对从1到a或者b本身的数求余数,可以找到最大公约数。a,b两个数的最大公因子最大是a,b中的最小数,就是i的值可以取到a.
#include <stdio.h>
int main()
{
int a,b,i,max;
scanf("%d%d",&a,&b);
for(i=1;i<=a;i++) //此时i<=a可以替换成i<=b
{
if( a%i==0 && b%i==0)
max=i; // 因子i逐渐增大,故把i的值赋给max,求得的就是最大公因子。
}
printf("最大公约数为%d\n",max);
return0;
}