闰年的判断方法(两个条件都满足):

1)年份能被4整除 ,但不能被100整除。

2)年份能被400整除。

题目一

输入一个年份,判断它是不是闰年

方法1(基础版)

#define _CRT_SECURE_NO_WARNINGS 1#includeint main(){int y = 0;printf("请输入一个年份:");scanf("%d", &y);if (((y% 4 == 0) && (y % 100 != 0)) || (y % 400 == 0))printf("%d是闰年", y);elseprintf("%d不是闰年",y);return 0;}

方法2(利用函数)

我们可以利用bool或者_Bool的返回值来判断是否为闰年(bool(布尔类型)是一种数据类型,只有真(true)和假(false)两个值)

#define _CRT_SECURE_NO_WARNINGS 1#include#include//bool需要包含的头文件 bool is_leap_year(int j){if (((j % 4 == 0) && (j % 100!= 0)) || (j % 400 == 0))return true;//是闰年elsereturn false;//不是闰年}int main(){int y= 0;printf("请输入一个年份:");scanf("%d", &y);if (is_leap_year(y))printf("%d是闰年",y);else printf("%d不是闰年",y);return 0;}

题目二

判断1000~2000之间的闰年

方法1 (基础版)

#define _CRT_SECURE_NO_WARNINGS 1#includeint main(){int y = 0;int count = 0;for (y = 1000; y <= 2000; y++){if (((y % 4 == 0) && (y % 100 != 0)) || (y % 400 == 0)){printf("%d ", y);count++;}}printf("\ncount=%d", count);return 0;}

方法2(利用函数)

#define _CRT_SECURE_NO_WARNINGS 1#include#include bool is_leap_year(int y){if (((y % 4 == 0) && (y% 100!= 0)) || (y % 400 == 0))return true;elsereturn false;}int main(){int y = 0;int count = 0;for (y = 1000; y <= 2000; y++){if (is_leap_year(y)){count++;printf("%d ", y);}}printf("\ncount=%d", count);return 0;}

运行结果