24小时热门版块排行榜    

查看: 1547  |  回复: 9
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

我爱小虫子

新虫 (正式写手)

[交流] 疑惑:一道C++的小程序,不理解 已有4人参与

求一个日期对应的星期几
(这是在JAVA书上看到的,我把它转成了C++),但是,里面的一个语句(total=year-1980+(year-1980+3)/4)不懂是在干什么,求大神解答。。。。。自己感觉应该是(total=(year-1980)*365+(year-1980+3)/4).。。。你们觉得呢,我哪里理解错了吗


#include<iostream>
using namespace std;

void main()
{
        int year=2006,month=8,day=18,total,week,i;
        bool leap=false;
        leap=(year%400==0)||(year%100!=0)&&(year%4==0);
        week=1;                                               //起始日1979-12-31是Monday
        total=(year-1980)+(year-1980+3)/4;                    //求平(闰)年累计的总天数
        for(i=1;i<=month-1;i++)
        {
                switch(i)
                {
                case 1:
                case 3:
                case 5:
                case 7:
                case 8:
                case 10:
                case 12: total+=31;break;
                case 4:
                case 6:
                case 9:
                case 11:total+=30;break;
                case 2:
                        if(leap) total+=29;
                        else     total+=28;
                        break;


                }
        }

        total+=day;
        week=(week+total)%7;

        cout<<"date "<<year<<"-"<<month<<"-"<<day<<" is ";
        switch(week)
        {
        case 0: cout<<"Sunday"<<endl; break;
        case 1: cout<<"Monday"<<endl; break;
        case 2: cout<<"Tuesday"<<endl; break;
        case 3: cout<<"Wednesday"<<endl; break;
        case 4: cout<<"Thursday"<<endl; break;
        case 5: cout<<"Friday"<<endl; break;
        case 6: cout<<"Saturday"<<endl; break;
        }
}
回复此楼

» 本帖已获得的红花(最新10朵)

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

虾仁拉面

金虫 (初入文坛)


小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
3楼: Originally posted by 我爱小虫子 at 2014-01-09 17:12:21
非常感谢,。。。顿时感觉这个语句好高深,。。。但是,我还是想不明白,对于,2000,2100,这个两个年份它是怎么做到的,我知道,对于2000,在计算2001~2003的时候,累加了2000这个闰年,
对于2100,在计算 ...

楼主可以找一下公历的表示法
leap=(year%400==0)||(year%100!=0)&&(year%4==0);
这句就是判断是否闰年
4楼2014-01-13 00:14:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 10 个回答

laohuajiang

至尊木虫 (职业作家)

老花匠


小木虫: 金币+0.5, 给个红包,谢谢回帖
静坐常思自己过,闲谈莫论他人非!---老花匠(老非老-春残意彷徨;花非花-芳踪觅繁华,匠非匠-最美难得糊涂!)
2楼2014-01-09 15:03:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

我爱小虫子

新虫 (正式写手)

引用回帖:
2楼: Originally posted by laohuajiang at 2014-01-09 15:03:00
http://hi.baidu.com/hypatia9202/item/0ccecc846395b6d8d1f8cda9

非常感谢,。。。顿时感觉这个语句好高深,。。。但是,我还是想不明白,对于,2000,2100,这个两个年份它是怎么做到的,我知道,对于2000,在计算2001~2003的时候,累加了2000这个闰年,
对于2100,在计算2101~2103的时候,没有累加2100,因为它是平年,我就是想不明白,它是怎么做到能区分2000,和2100这种年份的
3楼2014-01-09 17:12:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

我爱小虫子

新虫 (正式写手)

引用回帖:
4楼: Originally posted by 虾仁拉面 at 2014-01-13 00:14:50
楼主可以找一下公历的表示法
leap=(year%400==0)||(year%100!=0)&&(year%4==0);
这句就是判断是否闰年...

谢谢你,你说的这个我是知道的,我纠结 的不是这句啊,是
(total=year-1980+(year-1980+3)/4),,,看了个二楼贴的网址,有点明白,但是还是又有我提出来的这个疑惑,希望大神能给出解释解释
5楼2014-01-13 08:55:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 材料专硕306英一数二 +6 z1z2z3879 2026-03-16 8/400 2026-03-17 14:03 by 勇敢太监王公公
[考研] 08工科 320总分 求调剂 +4 梨花珞晚风 2026-03-17 4/200 2026-03-17 13:38 by houyaoxu
[考研] 化学调剂0703 +8 啊我我的 2026-03-11 8/400 2026-03-16 17:23 by 我的船我的海
[考研] 304求调剂 +5 素年祭语 2026-03-15 5/250 2026-03-16 17:00 by 我的船我的海
[考研] 一志愿211 0703方向310分求调剂 +3 努力奋斗112 2026-03-15 3/150 2026-03-16 16:44 by houyaoxu
[考研] 0703一志愿211 285分求调剂 +5 ly3471z 2026-03-13 5/250 2026-03-16 16:16 by 哦哦123
[考研] 0703化学调剂,求各位老师收留 +8 秋有木北 2026-03-14 8/400 2026-03-16 15:21 by 哦哦123
[考研] 机械专硕调剂 +3 笨笨兔子 2026-03-12 3/150 2026-03-15 20:02 by 栗子粥?
[考研] 255求调剂 +3 李嘉慧, 2026-03-12 4/200 2026-03-14 16:58 by 有只狸奴
[考研] 材料080500调剂求收留 +3 一颗meteor 2026-03-13 3/150 2026-03-14 10:54 by peike
[考研] 285 求调剂 资源与环境 一志愿北京化工大学 +3 未名考生 2026-03-10 3/150 2026-03-13 23:04 by JourneyLucky
[考研] 材料371求调剂 +9 鳄鱼? 2026-03-11 11/550 2026-03-13 22:53 by JourneyLucky
[考研] 0703化学调剂 +4 快乐的香蕉 2026-03-11 4/200 2026-03-13 22:41 by JourneyLucky
[考研] 四川大学085601材料工程专硕 初试294求调剂 +4 祝我们好在冬天 2026-03-11 4/200 2026-03-13 21:39 by peike
[考研] 【考研调剂求收留】 +3 Ceciilia 2026-03-11 3/150 2026-03-13 20:18 by JourneyLucky
[考研] 301求调剂 +6 Liyouyumairs 2026-03-11 6/300 2026-03-13 20:11 by JourneyLucky
[考研] 材料专硕350 求调剂 +4 王金科 2026-03-12 4/200 2026-03-13 16:02 by ruiyingmiao
[考研] 0856化学工程280分求调剂 +4 shenzxsn 2026-03-11 4/200 2026-03-13 11:55 by ymwdoctor
[考研] 277求调剂 +4 anchor17 2026-03-12 4/200 2026-03-13 11:15 by 白夜悠长
[考博] 26申博求助 +3 跳跃饼干 2026-03-10 4/200 2026-03-10 21:15 by Tntcnn
信息提示
请填处理意见