c语言判断是否为闰年

Python012

c语言判断是否为闰年,第1张

运行结果:

#include<stdio.h>

#include<stdlib.h>

int main() {

int year

printf("***此程序是判断某一年是否为闰年***\n")

printf("请输入年份:\n")

scanf("%d",&year)

if(year<=0) {

printf("您的输入错误!\n")

return 0

} else {

if(year%100==0) {

if(year%400==0) {

printf("%d年是闰年\n",year)

} else printf("%d年不是是闰年",year)

} else {

if(year%4==0) printf("%d年是闰年\n",year)

else printf("%d年不是闰年\n",year)

}

}

getchar()

system("pause")

return 0

}

四种方法判断闰年:

第一种:条件嵌套语句(三个if…else…)。

如果普通年能被4整除但不能被100整除,则为闰年,例如2020年为闰年。

如果世纪年可被400整除,则为闰年,例如2000年为闰年。

第二种则是直接条件判断,if…else if…else if…else。

第三种则是如果能被4整除但不能被100整除或者能被400整除两个条件满足其中一个则为闰年。

第四种方法,与上面leap相似,不过上面是用数字0和1来记录,下面则用逻辑值来记录。

判断任意年份是否为闰年,需要满足以下条件中的任意一个:

①该年份能被4整除同时不能被100整除。

②该年份能被400整除。

本实例中使用嵌入式if-else语句。

判断语句

if(((0==year%4)&&(0!=year%100))||(0==year%400))

{//满足该条件的yeat就是闰年。}

以下是源程序代码:

#include<stdio。h>

intmain(void){

intyear;

printf("pleaseayear:");

scanf("%i",&year);

if((year%4==0&&year%100!=0)||year%400==0){printf("%iisaleapyear!",year);}else{printf("%iisnotaleapyear!",year);}

return0;}

给定年份的天数,自然就知道是不是闰年了。

比如说在单元格A1输入年份,公式就变成:

=IF(A1=1582,355,IF(A1<0,IF(MOD(A1,4)=3,366,365),IF(A1<1582,IF(MOD(A1,4)=0,366,365),365+IF(MOD(A1,4)=0,1,0)-IF(MOD(A1,400)=0,0,1)+IF(MOD(A1,100)=0,0,1))))

现实中一般碰到的年份,自然是无交集地晚于1582年的年份,这时给定年份的天数可以用这个公式:

=365+IF(MOD(单元格,4)=0,1,0)-IF(MOD(单元格,400)=0,0,1)+IF(MOD(单元格,100)=0,0,1)

以上内容参考:百度百科-闰年