首先,闰年是指能被4整除但不能被100整除或者能被400整除的年份。
①第一种方法比较复杂,需要使用多个if语句来完成。第一个if语句判断能否被4整除,第二个if语句判断能否被100整除,第三个if语句判断能否被400整除(注意第三个语句不能使用else if,if else语句在使用时只要进入第一个if语句就不会再进入后面带有else的语句,如果这里使用else if则判断不出被400整除的年份)。定义一个变量表示年份,再定义一个计数器count数出具体个数。完整代码如下:
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int year = 0;
int count = 0;
for (year = 1000; year <= 2000; year++)
{
if (year % 4 == 0)
{
if (year % 100 != 0)
{
printf("%d ", year);
count++;
}
}
if (year % 400 == 0)
{
printf("%d ", year);
count++;
}
}
printf("\ncount=%d\n", count);
system("pause");
return 0;
}
运行结果如下:
②只要使用一个if语句完成多个判断,即逻辑与和逻辑或。能被4且能被100整除是与的关系,用&&连接;能被400整除与前一条件是或的关系,用||连接。完整代码如下:
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int year = 0;
int count = 0;
for (year = 1000; year <= 2000; year++)
{
if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0))
{
count++;
printf("%d ",year);
}
}
printf("\ncount=%d\n", count);
system("pause");
return 0;
}
运行结果如下: