杭电2005 我错哪了?给定一个日期,输出这个日期是该年的第几天.Input输入数据有多组,每组占一行,数据格式为YYYY/MM/DD组成,具体参见sample input ,另外,可以向你确保所有的输入数据是合法的.Output
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/05 20:00:10
![杭电2005 我错哪了?给定一个日期,输出这个日期是该年的第几天.Input输入数据有多组,每组占一行,数据格式为YYYY/MM/DD组成,具体参见sample input ,另外,可以向你确保所有的输入数据是合法的.Output](/uploads/image/z/13931086-22-6.jpg?t=%E6%9D%AD%E7%94%B52005+%E6%88%91%E9%94%99%E5%93%AA%E4%BA%86%3F%E7%BB%99%E5%AE%9A%E4%B8%80%E4%B8%AA%E6%97%A5%E6%9C%9F%2C%E8%BE%93%E5%87%BA%E8%BF%99%E4%B8%AA%E6%97%A5%E6%9C%9F%E6%98%AF%E8%AF%A5%E5%B9%B4%E7%9A%84%E7%AC%AC%E5%87%A0%E5%A4%A9.Input%E8%BE%93%E5%85%A5%E6%95%B0%E6%8D%AE%E6%9C%89%E5%A4%9A%E7%BB%84%2C%E6%AF%8F%E7%BB%84%E5%8D%A0%E4%B8%80%E8%A1%8C%2C%E6%95%B0%E6%8D%AE%E6%A0%BC%E5%BC%8F%E4%B8%BAYYYY%2FMM%2FDD%E7%BB%84%E6%88%90%2C%E5%85%B7%E4%BD%93%E5%8F%82%E8%A7%81sample+input+%2C%E5%8F%A6%E5%A4%96%2C%E5%8F%AF%E4%BB%A5%E5%90%91%E4%BD%A0%E7%A1%AE%E4%BF%9D%E6%89%80%E6%9C%89%E7%9A%84%E8%BE%93%E5%85%A5%E6%95%B0%E6%8D%AE%E6%98%AF%E5%90%88%E6%B3%95%E7%9A%84.Output)
杭电2005 我错哪了?给定一个日期,输出这个日期是该年的第几天.Input输入数据有多组,每组占一行,数据格式为YYYY/MM/DD组成,具体参见sample input ,另外,可以向你确保所有的输入数据是合法的.Output
杭电2005 我错哪了?
给定一个日期,输出这个日期是该年的第几天.
Input
输入数据有多组,每组占一行,数据格式为YYYY/MM/DD组成,具体参见sample input ,另外,可以向你确保所有的输入数据是合法的.
Output
对于每组输入数据,输出一行,表示该日期是该年的第几天.
Sample Input
1985/1/20
2006/3/12
Sample Output
20
71
Author
lcy
Source
C语言程序设计练习(一)
code:
#include
int main()
{
int a,b,c,m=0;
int i=0;
int year[4]={1,0,0,0};
int month[12]={31,28,31,30,31,30,31,31,30,31,30,31};
a=0;b=0;c=0;
printf("请输入年/月/日:\n");
scanf("%d/%d/%d",&a,&b,&c);
i=a%4;
if(a%400!=0&&a%100==0) i=1 ;
month[1]=year[i]+month[1];
for(i=0;i
杭电2005 我错哪了?给定一个日期,输出这个日期是该年的第几天.Input输入数据有多组,每组占一行,数据格式为YYYY/MM/DD组成,具体参见sample input ,另外,可以向你确保所有的输入数据是合法的.Output
需要连续输入,m要初始化,输出后要换行
主要注意这三个吧
下面是我自己写的AC代码
#include
#include
int leap(int year)
{
if((year%4==0 && year%100!=0)||(year%400==0))
return 1;
return 0;
}
int main()
{
int y,m,d;
int a[13]={0,31,59,90,120,151,181,212,243,273,304,334,365};
while(scanf("%d%*c%d%*c%d",&y,&m,&d)!=EOF)
{
int flag=0;
flag=leap(y);
if(m>2)
printf("%d\n",a[m-1]+flag+d);
else
printf("%d\n",a[m-1]+d);
}
return 0;
}