| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 688 人关注过本帖
标题:【求助】求大家帮我给代码加点注释,在线等
取消只看楼主 加入收藏
longlong89
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:广州
等 级:小飞侠
威 望:6
帖 子:1043
专家分:2754
注 册:2009-8-18
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:5 
【求助】求大家帮我给代码加点注释,在线等
#include <stdio.h>

int is_leap_year(int y)
{
    return y % 400 == 0 || (y % 4 == 0 && y % 100 != 0);
}

int get_days(int y, int m, int d)
{
    int month[] = {0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334, 365};
    if (m > 2 && is_leap_year(y))
        ++d;
    return y * 365 + y / 4 - y / 100 + y / 400 + month[m - 1] + d;/*这个地方不明白,麻烦了,多谢*/
}

int main(void)
{
    int by, bm, bd, cy, cm, cd;

    puts("请输入自己的生日与今天的日期,格式为yyyy-mm-dd,两组日期以空格分隔:");
    while (scanf("%d-%d-%d %d-%d-%d",
                &by, &bm, &bd, &cy, &cm, &cd) == 6)
        printf("相差%d天。\n", get_days(cy, cm, cd) - get_days(by, bm, bd));
    return 0;
}/*代码功能是算一个人活了多少天,根据他的出生年月日和现在的年月日*/

[ 本帖最后由 longlong89 于 2009-10-29 18:47 编辑 ]
搜索更多相关主题的帖子: 在线 代码 注释 
2009-10-29 18:00
longlong89
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:广州
等 级:小飞侠
威 望:6
帖 子:1043
专家分:2754
注 册:2009-8-18
收藏
得分:0 
看了几天还不明白,麻烦大家了

想象力征服世界
2009-10-29 18:04
longlong89
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:广州
等 级:小飞侠
威 望:6
帖 子:1043
专家分:2754
注 册:2009-8-18
收藏
得分:0 
还是不明白,多出一天用y/4和y/400,少一天用y/100怎么表示啊,有点转不过来能不能说详细点
先谢谢楼上的大哥

想象力征服世界
2009-10-29 18:15
longlong89
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:广州
等 级:小飞侠
威 望:6
帖 子:1043
专家分:2754
注 册:2009-8-18
收藏
得分:0 
为了今晚睡好觉 在线等!
多谢大家啦

想象力征服世界
2009-10-29 18:37
longlong89
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:广州
等 级:小飞侠
威 望:6
帖 子:1043
专家分:2754
注 册:2009-8-18
收藏
得分:0 
多谢上楼,结贴了

想象力征服世界
2009-10-29 19:09
longlong89
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:广州
等 级:小飞侠
威 望:6
帖 子:1043
专家分:2754
注 册:2009-8-18
收藏
得分:0 
以下是引用cosdos在2009-10-29 18:59:17的发言:

y * 365 + y / 4 - y / 100 + y / 400 + month[m - 1] + d;

y / 4,为 y 中有几个四年,
y / 100,为 y 中有几个一百年,
y / 400,为 y 中有几个四百年,

a. 按平年算得天数。
b. 先按每四年一个闰年,计算有几 ...
有点急躁
有一点不是很明白,y*365既然已经包括了所有平年,为什么还要减去y/100(不是闰年的)?不是闰年既是平年,平年已经包括在y*365里了啊

想象力征服世界
2009-10-29 19:19
快速回复:【求助】求大家帮我给代码加点注释,在线等
数据加载中...
 
   



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

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