C program to find GCD of two numbers


This is a C program to find GCD of two numbers.

The Greatest Common Divisor (GCD) or Highest Common Factor (HCF) of a given integer is the highest positive integer that divides the given integer without remainder.

For better understanding, the concept of following c programming topics is required

C program to find GCD of two numbers using for loop

#include <stdio.h>

int main()
{
   int x, y, i, gcd;

   printf("Enter two integer values: \n");
   scanf("%d %d", &x, &y);

   for (i = 1; i <= x && i <= y; i++)\
   {
      if (x % i == 0 && y % i == 0)
         gcd = i;
   }

   printf("GCD of %d and %d is: %d", x, y, gcd);

   return 0;
}

Output

C program to find GCD of two numbers using for loop

Explanation

The program logic to calculate GCD or HCF is simple. for loop continue till the value of i is equal to x or y and if condition checks whether the remainder of x and y when divided by i is equal to 0 or not.

C program to find GCD of two numbers using while loop

#include <stdio.h>

int main()
{
   int x, y, temp, gcd;

   printf("Enter two integer: \n");
   scanf("%d %d", &x, &y);

   while (y != 0)
   {
      temp = y;
      y = x % y;
      x = temp;
   }

   gcd = x;
   printf("GCD of given integers is: %d", gcd);

   return 0;
}

Output

C program to find GCD of two numbers using while loop