19 根据指定日期计算是星期几

柔情只为你懂 2023-07-05 14:48 26阅读 0赞

请编写一 C 语言函数 get_weekday,该函数用于计算某一天是星期几。函数接收三个整型参数,分别表示年(year),月(month)与日(day);并返回一个整数表示星期几,用 0 表示星期日,1-6 表示星期一到星期六。

说明:已知公元元年(即 1 年)1 月 1 日是星期一。为简化问题,只考虑公元后的日期,即年 >= 1。

  1. #include<stdio.h>
  2. int main()
  3. {
  4. int y, c, m, d, w, year, month, day;
  5. printf("请输入一个日期,空格隔开:\n");
  6. scanf("%d%d%d", &year, &month, &day);
  7. y = year % 100;//年,如2015,即年是15年
  8. c = year / 100;//年份前两位,如2015即20
  9. m = month; d = day;
  10. if (m == 1 || m == 2) { //判断月份是否为1或2
  11. y--;
  12. m += 12;//某年的1、2月要看作上一年的13、14月来计算
  13. }
  14. w = y + y / 4 + c / 4 - 2 * c + 13 * (m + 1) / 5 + d - 1;//蔡勒公式的公式
  15. while (w < 0) w += 7;//确保余数为正
  16. w %= 7;
  17. printf("输入的日期是星期%d", w);
  18. return 0;
  19. }

运行结果

20200215222828908.png

发表评论

表情:
评论列表 (有 0 条评论,26人围观)

还没有评论,来说两句吧...

相关阅读

    相关 JAVA获取指定日期星期

    最近公司有个需求变更,之前用户提现金额到账户中每月只能提现一次,现在改为每周一提现一次。 检验是否是周一,这里是简单的例子,可以根据自己的需求田间条件,例如查询数据库的提...