C Program to Add Two Distances (in inch-feet system) using Structures

To understand this example, you should have the knowledge of the following C programming topics:

If you do not know, 12 inches is 1 foot.

Program to add two distances in the inch-feet system

#include <stdio.h>

struct Distance {
   int feet;
   float inch;
} d1, d2, result;

int main() {
   // take first distance input
   printf("Enter 1st distance\n");
   printf("Enter feet: ");
   scanf("%d", &d1.feet);
   printf("Enter inch: ");
   scanf("%f", &d1.inch);
   // take second distance input
   printf("\nEnter 2nd distance\n");
   printf("Enter feet: ");
   scanf("%d", &d2.feet);
   printf("Enter inch: ");
   scanf("%f", &d2.inch);
   // adding distances
   result.feet = d1.feet + d2.feet;
   result.inch = d1.inch + d2.inch;

   // convert inches to feet if greater than 12
   while (result.inch >= 12.0) {
      result.inch = result.inch - 12.0;
   printf("\nSum of distances = %d\'-%.1f\"", result.feet, result.inch);
   return 0;


Enter 1st distance
Enter feet: 23
Enter inch: 8.6

Enter 2nd distance
Enter feet: 34
Enter inch: 2.4

Sum of distances = 57'-11.0"

In this program, a structure Distance is defined. The structure has two members:

  • feet - an integer
  • inch - a float

Two variables d1 and d2 of type struct Distance are created. These variables store distances in the feet and inches.

Then, the sum of these two distances are computed and stored in the result variable. Finally, result is printed on the screen.

Did you find this article helpful?