方法一:
#include <stdio.h>
int main()
{
int a,b;
scanf("%d %d",&a,&b);
int i,max,min;
max=0;
min=(a<b)?a:b;
for(i=1;i<=min;i++)
{
if(a%i==0&&b%i==0)
max=i;
}
printf("%d",max);
return 0;
}
方法二:
#include <stdio.h>
int main()
{
int a,b;
scanf("%d %d",&a,&b);
int i,max;
max=(a<b)?a:b;
while(1)
{
if(a%max==0&&b%max==0)
break;
max--;
}
printf("%d",max);
return 0;
}
方法三:辗转相除法
#include <stdio.h>
int main()
{
int a,b,c;
c=0;
scanf("%d %d",&a,&b);
while(c=a%b)
{
a=b;
b=c;
}
printf("%d\n",b);
return 0;
}