hdoj 第几天?
来源:互联网 发布:淘宝单号购买平台 编辑:程序博客网 时间:2024/05/22 01:14
Problem Description
给定一个日期,输出这个日期是该年的第几天。
Input
输入数据有多组,每组占一行,数据格式为YYYY/MM/DD组成,具体参见sample input ,另外,可以向你确保所有的输入数据是合法的。
Output
对于每组输入数据,输出一行,表示该日期是该年的第几天。
Sample Input
1985/1/202006/3/12
Sample Output
2071
代码:
#include<stdio.h>
int main()
{
int days[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int year,month,day;
while(scanf("%d/%d/%d",&year,&month,&day)!=EOF)
{
if((year%4==0&&year%100!=0)||(year%400==0))
{
days[2]++;
if(month==1)
printf("%d\n",day);
else
{
for(int i=1;i<=month-1;i++)
{
day=days[i]+day;
}
printf("%d\n",day);
}
days[2]--;
}
else
{
if(month==1)
printf("%d\n",day);
else
{
for(int i=1;i<=month-1;i++)
{
day=days[i]+day;
}
printf("%d\n",day);
}
}
}
return 0;
}
注意:在定义数组时注意第一个数字是b【0】所代表的,所以在定义十二个月的天数时要定义是三个数字,第一个可以为任意数,从第二个开始才是每月天数。
int main()
{
int days[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int year,month,day;
while(scanf("%d/%d/%d",&year,&month,&day)!=EOF)
{
if((year%4==0&&year%100!=0)||(year%400==0))
{
days[2]++;
if(month==1)
printf("%d\n",day);
else
{
for(int i=1;i<=month-1;i++)
{
day=days[i]+day;
}
printf("%d\n",day);
}
days[2]--;
}
else
{
if(month==1)
printf("%d\n",day);
else
{
for(int i=1;i<=month-1;i++)
{
day=days[i]+day;
}
printf("%d\n",day);
}
}
}
return 0;
}
注意:在定义数组时注意第一个数字是b【0】所代表的,所以在定义十二个月的天数时要定义是三个数字,第一个可以为任意数,从第二个开始才是每月天数。
0 0
- HDoj第几天
- hdoj 第几天
- HDOJ 2005 第几天?
- HDOJ-2005-第几天
- HDOJ 2005 第几天?
- hdoj 第几天?
- hdoj 2005 第几天?
- HDOJ 2005 第几天?
- HDOJ 2005 第几天
- HDOJ 2005-第几天?
- HDOJ 2005 第几天?
- Hdoj 2005 第几天?
- HDOJ 2005 第几天?
- HDOJ 【C】2005 第几天?
- hdoj.2005 第几天? 20140721
- HDOJ 2005 第几天?(水)
- HDOJ 2005 第几天?(使用对象)
- hdoj 2005(java) 第几天?
- 深入理解JVM之七:静态分派与动态分派
- caj转pdf超简单!
- RecyclerView+Cardview学习探索
- CentOS修改系统时间
- 连接String与Int(转)
- hdoj 第几天?
- c++11,线程池之二--有等待线程池中任务完成功能的线程池
- 朴素贝叶斯算法理解
- 【IOS】IOS OpenCV之HelloWorld
- ContentProvider实现数据共享1
- 滤波电容、去耦电容、旁路电容作用
- 随意细解:UI -- 标签视图控制器
- UIImagePickerController详解
- [LeetCode]002-AddTwoNumber