#include<stdioh>
#pragma warning (disable:4996)
int runnian(int n)
{
if (((n%100!=0) && (n%4==0)) || ( n % 400==0) )
{
return 1;
}
else
{
return 0;
}
}
int main()
{
int i = 0;
int t = 0;
printf("请输入一个年份:");
scanf("%d", &i);
t =runnian(i);
if (t == 1)
{
printf("%d 是闰年\n", i);
}
else
{
printf("%d 不是闰年\n", i);
}
return 0;
}
扩展资料:
判断标准为
1、能整除4且不能整除100。
2、能整除400。
缘由
1、产生闰年原因:地球绕太阳运行周期为365天5小时48分46秒(合36524219天)即一回归年(tropical year)。公历的平年只有365日,比回归年短约02422 日,所余下的时间约为四年累计一天,故四年于2月加1天,使当年的历年长度为366日,这一年就为闰年。
2、上面算法又有了一个问题,就是024224=09688,比一天还差00322天,每4年差00322天不算多,但每400年就会差了约3天。即是说,假如每4年一个闰年,那么每400年就会有100个闰年,然后会多算了3天。
所以,就规定了每四百年中要减少三个闰年。公历年份是整百数的,必须是400的倍数的才是闰年,不是400的倍数的,虽然是100的倍数,也是平年。
应该是这样的:
#include
<stdioh>
void
main
()
{
int
year;
scanf("请输入年份%d",
&year);
if
((year%4==0)
&&
(year%100!==0)
||
(year%400==0));
printf("此年是闰年\n");
else
printf("此年不是闰年\n");
}
注:除了
scanf
句中漏了
&
以外,搂主贴出来的程序中
if
后面的逻辑也错了。闰年的定义应该是:年份可用
4
整除,却不能用
100
整除,或者能用
400
整除。
#include "stdioh"
main()
{
int year;
pritnf ("输入一个年份: ");
scanf ("%d",&year);
if (year%4==0 && year%100!=0 || year%400==0)
{
printf ("%d是闰年\n",year);
}
else
printf ("%d不是闰年\n",year);
}
首先,需要明确的是闰年能被4整除而不能被400整除,符合这个条件就是闰年。
#include<stdioh>
void main()
{
int i,year,n;
do
{
scanf("%d",&year);
if(((year%4==0)&&(year%100!=0)) || year%400==0 )
{
printf("yeah\n");
}
else if(year==-1)
{
}
else
{
printf("no\n");
}
}while(year!=-1);
}
1、首先在VS中准备一个Console程序。
2、然后获取当前时间。
3、然后在Datetime类中有一个IsLeapYear方法用来判断闰年。
4、IsLeapYear得到的是布尔类型的值。
5、接着点击运行按钮,如下图所示。
6、就可以看到当前的年是不是闰年了。
一、闰年判断方法:
1、非整百年:能被4整除的为闰年。(如2004年就是闰年,2100年不是闰年)
2、整百年:能被400整除的是闰年。(如2000年是闰年,1900年不是闰年)
二、算法设计:
1、输入年份;
2、根据年份,判断是否为闰年;
3、输出结果。
三、参考代码:
#include <stdioh>int main()
{
int year;
scanf("%d",&year);//输入年份
if(year%400==0 || (year%4==0 && year%100 !=0))//判断是否为闰年
printf("是闰年\n");
else printf("不是闰年\n");//输出结果。
return 0;
}
以上就是关于c语言关于计算闰年的程序全部的内容,包括:c语言关于计算闰年的程序、C语言闰年编程、用C语言设计一个求闰年的方法等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)