杭电 2005 第几天?

来源:互联网 发布:ubuntu 打开anaconda 编辑:程序博客网 时间:2024/04/30 09:01

第几天?

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 95024    Accepted Submission(s): 35755


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 y,m,day;
 int days[]={31,28,31,30,31,30,31,31,30,31,30,31};
 while(~scanf("%d/%d/%d",&y,&m,&day)){
  int i;
  for(i=0;i<m-1;i++){
   day+=days[i];
  }
  if((y%4==0&&y%100!=0)||(y%400==0)){
   if(m>2) day+=1;
  }
  printf("%d\n",day);
 }
 return 0;
}

0 0
原创粉丝点击