This program checks whether the input year is leap year or not.
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.
Leap Year :
- If a year is divisible by 4, 100 and 400 then it is a leap year.
- If a year is divisible by 4 but not divisible by 100 then it is a leap year
Not a Leap Year :
- If a year is not divisible by 4 then it is not a leap year.
- If a year is divisible by 4 and 100 but not divisible by 400 then it is not a leap year.
Algorithm :
- Take a year as input.
- Check whether a given year is divisible by 400.
- Check whether a given year is divisible by 100.
- Check whether a given year is divisible by 4.
- If the condition at step 2 and 4 becomes true, then the year is a leap year.
- If the condition at step 3 becomes true, then the year is not a leap year.
Implementation :
1. Using function :
// C Program to check Leap Year
#include <stdio.h>
// function to check condtiond
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 muliplt of 100,
// then it is not a leap year
if (year % 100 == 0)
return false;
// Else If a year is muliplt of 4,
// then it is a leap year
if (year % 4 == 0)
return true;
return false;
}
// driver code
int main()
{
// take input
int year = 2020;
checkYear(year)? printf("Leap Year"):
printf("Not a Leap Year");
// successful completion
return 0;
}
Output :
Leap Year
2. Check in one line :
// C Program to check Leap Year
#include <stdio.h>
int main() {
// take input
int year =2020;
// check condtions
if (((year % 4 == 0) && (year % 100 != 0)) || (year%400 == 0))
printf("Leap Year", year);
else
printf("Not a Leap Year", year);
// successful completion
return 0;
}
Output :
Leap Year
Please write comments if you find anything incorrect. A gentle request to share this topic on your social media profile.
