C Program to Check Leap Year

In this example, you will learn to check whether the year entered by the user is a leap year or not.
Leap year

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

A leap year is exactly divisible by 4 except for century years (years ending with 00). The century year is a leap year only if it is perfectly divisible by 400.

For example,

  • 1999 is not a leap year
  • 2000 is not a leap year
  • 2004 is a leap year

Program to Check Leap Year

#include <stdio.h>
int main() {
    int year;
    printf("Enter a year: ");
    scanf("%d", &year);
    if (year % 4 == 0) {
        if (year % 100 == 0) {
            // the year is a leap year if it is divisible by 400.
            if (year % 400 == 0)
                printf("%d is a leap year.", year);
            else
                printf("%d is not a leap year.", year);
        } else
            printf("%d is a leap year.", year);
    } else
        printf("%d is not a leap year.", year);

    return 0;
}

Output 1

Enter a year: 1900
1900 is not a leap year.

Output 2

Enter a year: 2012
2012 is a leap year.