社区
C语言
帖子详情
闰年算法问题
puzzle1986
2008-10-09 10:47:18
见得最多得算法是:
true = y%4 == 0 && y%100 != 0 || y%400 == 0
可是小学就学过只要年数y除以4没有余数就是闰年,为什么多出来那么多?(是算法的效率问题?)
还有个是在MOP上看到的,有这么一题:
main( )
{
int a = 1, b = 2;
printf( "%d", 1 + a/b ); /*把1 + a/b换成1.0 + a/b后,运算结果是0,前面是正常的1,为什么?我是在linux下用gcc编译的*/
}
...全文
635
10
打赏
收藏
闰年算法问题
见得最多得算法是: true = y%4 == 0 && y%100 != 0 || y%400 == 0 可是小学就学过只要年数y除以4没有余数就是闰年,为什么多出来那么多?(是算法的效率问题?) 还有个是在MOP上看到的,有这么一题: main( ) { int a = 1, b = 2; printf( "%d", 1 + a/b ); /*把1 + a/b换成1.0 + a/b后,运算结果是0,前面是正常的1,为什么?我是在linux下用gcc编译的*/ }
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xianyuxiaoqiang
2008-10-10
打赏
举报
回复
小学老师水平比较差。
我小学老师也是错的。初中老师倒教的不错。润年就是按照该算法算的。
另外%d对应int型。后面1.0是float型,float和int相加结果为float,输出
时格式不匹配。想深入研究的话看看计算机原理中有关float的规约。
阿提饭
2008-10-10
打赏
举报
回复
你老师错了
hander_vip
2008-10-10
打赏
举报
回复
baidu知道上的:
关于公历闰年是这样规定的:地球绕太阳公转一周叫做一回归年,一回归年长365日5时48分46秒。因此,公历规定有平年和闰年,平年一年有365日,比回归年短0.2422日,四年共短0.9688日,故每四年增加一日,这一年有366日,就是闰年。但四年增加一日比四个回归年又多0.0312日,400年后将多3.12日,故在400年中少设3个闰年,也就是在400年中只设97个闰年,这样公历年的平均长度与回归年就相近似了。由此规定:年份是整百数的必须是400的倍数才是闰年,例如1900年、2100年就不是闰年。
zzhzhua
2008-10-10
打赏
举报
回复
楼上的同志已经解决了。
WEN2222
2008-10-09
打赏
举报
回复
你算一下1000年是闰年吗?
1.0是浮点型,1是整形,运算的时候会转化为浮点型,要用那个%f的
dayuanquan
2008-10-09
打赏
举报
回复
bool judge(int n)
{
return (n%4==0&&n%100!=0)||n%400==0;
}
phz1985
2008-10-09
打赏
举报
回复
[Quote=引用楼主 puzzle1986 的帖子:]
见得最多得算法是:
true = y%4 == 0 && y%100 != 0 || y%400 == 0
可是小学就学过只要年数y除以4没有余数就是闰年,为什么多出来那么多?(是算法的效率问题?)
还有个是在MOP上看到的,有这么一题:
main( )
{
int a = 1, b = 2;
printf( "%d", 1 + a/b ); /*把1 + a/b换成1.0 + a/b后,运算结果是0,前面是正常的1,为什么?我是在linux下用gcc编译的*/
}
[/Quote]
你老师教错了.
chlaws
2008-10-09
打赏
举报
回复
改1.0那就是类型提升到float类型 用%d会溢出 所以要改格式输出符
tabby198512
2008-10-09
打赏
举报
回复
应该是赋值问题吧!一个浮点型的数按照整型格式输出,因为所占的内存不一样,高位舍弃,所以就是0了
JDR77
2008-10-09
打赏
举报
回复
整百年要是400的倍数才算是闰年,所以公元1000年不是闰年。
四年一闰,百年不闰,四百年再闰
闰年
算法
小例
闰年
算法
是计算机科学中一个基础且重要的概念,主要用于计算日期和时间。在我们的日历系统中,
闰年
是为了保持日期与地球公转周期相匹配而引入的特殊年份。通常,每四年会有一个
闰年
,这一年会有366天,而非常规的365...
闰年
的
算法
闰年
的
算法
###
闰年
算法
详解 #### 一、
闰年
的定义与由来
闰年
是指在公历(格里高利历)中为了弥补因地球绕太阳公转周期与公历一年的时间差而设置的一种特殊年份。地球绕太阳公转一圈大约需要365.2422天,而普通的一年只有365...
VC作业之判断
闰年
算法
VC作业之判断
闰年
算法
C语言判断
闰年
的
算法
.doc
C语言判断
闰年
的
算法
闰年
判断
算法
是计算机编程中的一种基本
算法
,用于判断某一年是否为
闰年
。在C语言中,判断
闰年
的
算法
可以通过以下几个步骤来实现: 首先,需要了解
闰年
的定义:
闰年
是指满足以下两个条件的年份...
判断是否是
闰年
流程图
判断是否是
闰年
流程图,即表达了
算法
又展示NS
算法
图的画法!
C语言
70,020
社区成员
243,264
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章