学习自b站c语言教学视频。
闰年判断规则
1.能被4整除,并且不能被100整除的
2.能被400整除
知识点:if语句,for循环,自定义函数,&&,||字符的含义。
进入if语句后就不会再进入else if语句,而两个if语句并列,两种情况都会进行判断。
方法1.用两个if语句嵌套来实现
#include <stdio.h>
int main()
{
int year = 0;
int sum = 0;
for (year = 1000; year <= 2000; year++)
{
if (year % 4 == 0)
{
if (year % 100 != 0)
{
printf("%d ", year);
sum++;
}
}
if (year % 400 == 0)
{
printf("%d ", year);
sum++;
}
}
printf("\nsum=%d ", sum);
return 0;
}
方法2.运用&&和||字符来实现。
#include <stdio.h>
int main()
{
int year = 0;
int sum = 0;
for (year = 1000; year <= 2000; year++)
{
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
//&&是并且的意思,||是或者的意思。
{
sum++;
printf("%d ", year);
}
}
printf("\nsum=%d\n", sum);
return 0;
}
方法3.调用自定义函数leap_year()
函数的功能一定要实现的足够单一,足够简单。即高内聚,低耦合。
#include<stdio.h>
int leap_year(int y)
{
if ((y % 4 == 0 && y % 100 != 0) || y % 400 == 0)
{
//是闰年返回1,不是闰年返回0
return 1;
}
else
{
return 0;
}
}
int main()
{
int year = 0;
int sum = 0;
for (year = 1000; year <= 2000; year++)
{
if (leap_year(year))//返回1则为真,返回0则为假,不是闰年。
{
sum++;
printf("%d ", year);
}
}
printf("\nsum=%d\n ", sum);
return 0;
}