Chinaunix首页 | 论坛 | 博客
  • 博客访问: 95401
  • 博文数量: 6
  • 博客积分: 153
  • 博客等级: 入伍新兵
  • 技术积分: 95
  • 用 户 组: 普通用户
  • 注册时间: 2011-11-07 20:57
文章分类

全部博文(6)

文章存档

2012年(5)

2011年(1)

我的朋友

分类: C/C++

2012-12-05 14:32:02

计算某天是一年中的第几天,巧用switch语句,经典算法。


点击(此处)折叠或打开

  1. //计算某天是一年中的第几天
  2. #include <stdio.h>

  3. int day_of_year(int year, int month, int day)
  4. {
  5.     int sum_days = 0;
  6.     //计算天数 巧用switch语句
  7.     switch (month - 1)
  8.     {
  9.         case 11:sum_days += 30;
  10.         case 10:sum_days += 31;
  11.         case 9: sum_days += 30;
  12.         case 8: sum_days += 31;
  13.         case 7: sum_days += 31;
  14.         case 6: sum_days += 30;
  15.         case 5: sum_days += 31;
  16.         case 4: sum_days += 30;
  17.         case 3: sum_days += 31;
  18.         case 2: sum_days += 28;
  19.         case 1: sum_days += 31; break;
  20.         default:break;
  21.     }

  22.     //判断是否是闰年 闰年2月29天
  23.     if ((year % 4 == 0) && (year % 100 != 0) || year % 400 == 0)
  24.         if (month > 2)
  25.             sum_days++;

  26.     sum_days += day;
  27.     return sum_days;
  28. }

阅读(6314) | 评论(0) | 转发(0) |
0

上一篇:计算本周是一年中的第几周

下一篇:没有了

给主人留下些什么吧!~~