求最大公约数

#include "stdio.h"

int find(int a, int b)
{
  int max = a > b ? a:b;
  int min = a < b ? a:b;
  int r =0;
  if(max%min == 0){
     return min;    
  }
  while(max%min != 0){
     r = min;
     min = max % min;
     max = r;
  }
  return min;
}

int find1(int a, int b)
{
  int max = a > b ? a:b;
  int min = a < b ? a:b;
  int r =0;
  if(max%min == 0){
     return min;    
  }
  return find1(min, max%min);
}

int main()
{

int a = find1(16, 36);
int b = find1(16, 37);
int c = find1(16, 8);
printf("%d\n",a);
printf("%d\n",b);
printf("%d\n",c);
}

你可能感兴趣的:(求最大公约数)