| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3066 人关注过本帖, 1 人收藏
标题:求万年历的代码!这个好像是高手的活
只看楼主 加入收藏
a7381526
Rank: 2
等 级:论坛游民
帖 子:10
专家分:13
注 册:2011-5-27
收藏
得分:0 
不要求作业
2011-06-04 22:45
唏嘘草
Rank: 2
等 级:论坛游民
帖 子:128
专家分:93
注 册:2011-6-4
收藏
得分:0 
回复 10楼 beyondyf
不是老师说按这个来的啊
我也不知到这个日期是不是真的
2011-06-04 22:50
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:0 
回复 12楼 唏嘘草
呵呵,请不要质疑我。我的程序是输入年份和月份生成一个月的日历,你可以打开你电脑上的日历任意选一个月对对看。
至于你的老师为什么选那么个日期作基准我不清楚,但不管他怎么选,我们的日历是不变的,不要执着在这一点上。
或者你可以问问你的老师为什么选1980年1月1日。
或者你可以问问他为什么公元1年1月1日是星期一。呵呵,这个问题比较有意思,你可以了解一段历史。

重剑无锋,大巧不工
2011-06-04 23:04
hjywyj
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:3
帖 子:1114
专家分:2611
注 册:2010-4-14
收藏
得分:0 
都不错!
2011-06-05 07:05
唏嘘草
Rank: 2
等 级:论坛游民
帖 子:128
专家分:93
注 册:2011-6-4
收藏
得分:0 
回复 13楼 beyondyf
感谢啊
2011-06-05 09:23
唏嘘草
Rank: 2
等 级:论坛游民
帖 子:128
专家分:93
注 册:2011-6-4
收藏
得分:0 
回复 8楼 beyondyf
哥你能把你写的函数的声明不部分到switch之间部分解释一下吗,我实在理解不了啊
2011-06-05 19:35
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:0 
preYears = year - 1;
     preDays = preYears * 365 + preYears / 4 - preYears / 100 + preYears / 400;
     isLeap = ((year % 4 == 0) && (year % 100 != 0) || (year % 400 == 0)) ? 1 : 0;
     preMonth = month - 1;
 是指这段吗?
preDays是从公元1年1月1日到当前年1月1日之前的总天数。
isLeap指示当前年份是不是闰年。
preMonth是当前年当前月之前的月数,通过下面的switch语句会折算成天数加到preDays上。
这比以1980年1月1日为基准方便吧。

重剑无锋,大巧不工
2011-06-05 21:19
唏嘘草
Rank: 2
等 级:论坛游民
帖 子:128
专家分:93
注 册:2011-6-4
收藏
得分:0 
回复 17楼 beyondyf
这位哥我花了几个小时把你的程序的注解写完了(全部正解,猜的部分也对了),只是有一个步骤为什么要除以6,而不死除以7 啊这个有点不解!
2011-06-05 21:34
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:0 
除以6?哪里除以6了?
你是指这句么?if((i + preDays) % 7 == 6) printf("\n");
那是余数等于6。
7的余数是0到6。
0是星期日。我们的日历的习惯排法是日一二三四五六。所以在星期六之后换行。

重剑无锋,大巧不工
2011-06-05 21:51
唏嘘草
Rank: 2
等 级:论坛游民
帖 子:128
专家分:93
注 册:2011-6-4
收藏
得分:0 
回复 19楼 beyondyf
还要问一下啊那个predays=..+..+..看不懂呢
2011-06-05 23:03
快速回复:求万年历的代码!这个好像是高手的活
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.011556 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved