确定某年某月某天是该年的第几天
2016-04-13 22:22
337 查看
#include <iostream>
using namespace std;
struct Date{
int year;
int month;
int day;
};
int main()
{
Date d;
cin>>d.year>>d.month>>d.day;
int temp;
if(d.year%4==0||d.year%400==0&&d.year%100!=0)
temp=0;
else
temp=1;
int days;
switch(d.month)
{
case 1:days=d.day;break;
case 2:days=31+d.day;break;
case 3:
if(temp==0)
{
days=31+29+d.day;
}
else
days=31+28+d.day;break;
case 4:
if(temp==0)
{
days=31+29+31+d.day;
}
else
days=31+28+31+d.day;break;
case 5:
if(temp==0)
{
days=31+29+31+30+d.day;
}
else
days=31+28+31+30+d.day;break;
case 6:
if(temp==0)
{
days=31+29+31+30+31+d.day;
}
else
days=31+28+31+30+31+d.day;break;
case 7:
if(temp==0)
{
days=31+29+31+30+31+30+d.day;
}
else
days=31+28+31+30+31+30+d.day;break;
case 8:
if(temp==0)
{
days=31+29+31+30+31+30+31+d.day;
}
else
days=31+28+31+30+31+30+31+d.day;break;
case 9:
if(temp==0)
{
days=31+29+31+30+31+30+31+31+d.day;
}
else
days=31+29+31+30+31+30+31+31+d.day;break;
case 10:
if(temp==0)
{
days=31+29+31+30+31+30+31+31+30+d.day;
}
else
days=31+29+31+30+31+30+31+31+30+d.day;break;
case 11:
if(temp==0)
{
days=31+29+31+30+31+30+31+31+30+31+d.day;
}
else
days=31+29+31+30+31+30+31+31+30+31+d.day;break;
case 12:
if(temp==0)
{
days=31+29+31+30+31+30+31+31+30+31+30+d.day;
}
else
days=31+29+31+30+31+30+31+31+30+31+30+d.day;break;
}
cout<<days;
return 0;
}
using namespace std;
struct Date{
int year;
int month;
int day;
};
int main()
{
Date d;
cin>>d.year>>d.month>>d.day;
int temp;
if(d.year%4==0||d.year%400==0&&d.year%100!=0)
temp=0;
else
temp=1;
int days;
switch(d.month)
{
case 1:days=d.day;break;
case 2:days=31+d.day;break;
case 3:
if(temp==0)
{
days=31+29+d.day;
}
else
days=31+28+d.day;break;
case 4:
if(temp==0)
{
days=31+29+31+d.day;
}
else
days=31+28+31+d.day;break;
case 5:
if(temp==0)
{
days=31+29+31+30+d.day;
}
else
days=31+28+31+30+d.day;break;
case 6:
if(temp==0)
{
days=31+29+31+30+31+d.day;
}
else
days=31+28+31+30+31+d.day;break;
case 7:
if(temp==0)
{
days=31+29+31+30+31+30+d.day;
}
else
days=31+28+31+30+31+30+d.day;break;
case 8:
if(temp==0)
{
days=31+29+31+30+31+30+31+d.day;
}
else
days=31+28+31+30+31+30+31+d.day;break;
case 9:
if(temp==0)
{
days=31+29+31+30+31+30+31+31+d.day;
}
else
days=31+29+31+30+31+30+31+31+d.day;break;
case 10:
if(temp==0)
{
days=31+29+31+30+31+30+31+31+30+d.day;
}
else
days=31+29+31+30+31+30+31+31+30+d.day;break;
case 11:
if(temp==0)
{
days=31+29+31+30+31+30+31+31+30+31+d.day;
}
else
days=31+29+31+30+31+30+31+31+30+31+d.day;break;
case 12:
if(temp==0)
{
days=31+29+31+30+31+30+31+31+30+31+30+d.day;
}
else
days=31+29+31+30+31+30+31+31+30+31+30+d.day;break;
}
cout<<days;
return 0;
}
相关文章推荐
- 基于硬件模拟器的操作系统调试技术
- Floyd最小环求最短路
- 使用XML生成菜单
- 云主机建立wordpress站点环境配置(一)nginx安装与配置
- 三元组实现矩阵加法
- 做自己的安卓拍照应用,其实很简单
- JavaBean与Web开发模式
- BZOJ 1083: [SCOI2005]繁忙的都市 kruskal
- iOS NSArray 求两个数组的交集 两个数组去重
- 做自己的安卓拍照应用,其实很简单
- Android快速开发系列 10个常用工具类
- C++ Q&A(一)C++与C的区别
- (9)Java设计模式-外观模式(Facade)
- 基于用户验证的简单samba配置
- next_permutation暴力搜索,POJ(3187)
- pip 升级包 技巧 一键升级
- lightoj 1037 - Agent 47 【状压dp】
- SOIL库加载纹理
- LeetCode *** 300. Longest Increasing Subsequence
- 求解逆序数问题