# C Program To Check Leap Year

• Last Updated : 19 Jul, 2022

A year is a leap year if the following conditions are satisfied:

1. The year is multiple of 400.
2. The year is multiple of 4 and not multiple of 100.  Following is pseudo-code

```if year is divisible by 400 then is_leap_year
else if year is divisible by 100 then not_leap_year
else if year is divisible by 4 then is_leap_year
else not_leap_year```

## C

 `// C program to check if a given``// year is leap year or not``#include ``#include ` `bool` `checkYear(``int` `year)``{``    ``// If a year is multiple of 400,``    ``// then it is a leap year``    ``if` `(year % 400 == 0)``        ``return` `true``;` `    ``// Else If a year is multiple of 100,``    ``// then it is not a leap year``    ``if` `(year % 100 == 0)``        ``return` `false``;` `    ``// Else If a year is multiple of 4,``    ``// then it is a leap year``    ``if` `(year % 4 == 0)``        ``return` `true``;``    ``return` `false``;``}` `// Driver code``int` `main()``{``    ``int` `year = 2000;` `    ``checkYear(year)? ``printf``(``"Leap Year"``):``                     ``printf``(``"Not a Leap Year"``);``    ``return` `0;``}`

Output:

`Leap Year`

Time Complexity: O(1)

Auxiliary Space: O(1)

How to write the above code in one line?

## C

 `// One line C program to check if a``// given year is leap year or not``#include ``#include ` `bool` `checkYear(``int` `year)``{``// Return true if year is a multiple``// of 4 and not multiple of 100.``// OR year is multiple of 400.``return` `(((year % 4 == 0) &&``        ``(year % 100 != 0)) ||``        ``(year % 400 == 0));``}` `// Driver code``int` `main()``{``    ``int` `year = 2000;` `    ``checkYear(year)? ``printf``(``"Leap Year"``):``                     ``printf``(``"Not a Leap Year"``);``    ``return` `0;``}`

Output:

`Leap Year`

Time Complexity: O(1)

Auxiliary Space: O(1)

Please refer complete article on Program to check if a given year is leap year for more details!

My Personal Notes arrow_drop_up