zoukankan      html  css  js  c++  java
  • *模板--杂

    星期几问题

     1 /*
     2  *  已知1752年9月3日是Sunday,并且日期控制在1700年2月28日后
     3  */
     4 char name[][15] = { "monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday"};
     5 
     6 int main()
     7 {
     8     int d, m, y, a;
     9     printf("Day: ");
    10     scanf("%d", &d);
    11     printf("Month: ");
    12     scanf("%d", &m);
    13     printf("Year: ");
    14     scanf("%d", &y);
    15     //  1月2月当作前一年的13,14月
    16     if (m == 1 || m == 2)
    17     {
    18         m += 12;
    19         y--;
    20     }
    21     //  判断是否在1752年9月3日之前,实际上合并在一起倒更加省事
    22     if ((y < 1752) || (y == 1752 && m < 9) || (y == 1752 && m == 9 && d < 3))
    23     {
    24         //  因为日期控制在1700年2月28日后,所以不用考虑整百年是否是闰年
    25         a = (d + 2 * m + 3 * (m + 1) / 5 + y + y / 4 + 5) % 7;
    26     }
    27     else
    28     {
    29         //  这里需要考虑整百年是否是闰年的情况
    30         a = (d + 2 * m + 3 * (m + 1) / 5 + y + y / 4 - y / 100 + y / 400) % 7;  //  实际上这个可以当做公式背下来
    31     }
    32     printf("it's a %s
    ", name[a]);
    33     return 0;
    34 }
    View Code
  • 相关阅读:
    MEP工作流程
    一盘很大的棋
    老人棒子鸡
    REVIT多专业协同设计
    不做没有理想的咸鱼
    卫生间排风设计规范
    如何时刻保持在目标的正确轨道上
    OGame殖民
    OGame舰队保护(FleetSave, FS)
    在局域网内架ESS3.0升级服务器
  • 原文地址:https://www.cnblogs.com/yijiull/p/7716246.html
Copyright © 2011-2022 走看看