输入某天的日期,如20151226,计算这天是当年的第几天
int main()
{
int day = 0;
int y = 0;
int m = 1;
int d = 0;
scanf("%d-%d-%d", &y, &m, &d);
switch(m-1) // 故意没有在case里加break
{
//case 12:
//day += 31;
case 11:
day += 30;
case 10:
day += 31;
case 9:
day += 30;
case 8:
day += 31;
case 7:
day += 31;
case 6:
day += 30;
case 5:
day += 31;
case 4:
day += 30;
case 3:
day += 31;
case 2:
if((y % 4 == 0 && y % 100 != 0) ||y%400==0)
{
day += 29;
}
else
{
day += 28;
}
case 1:
day += 31;
default:
break;
}
printf("%d", day+=d);
return 1;
}
#include <stdio.h>
#include <stdlib.h>
int main()
{
int year,month,day;
int days;
int i;
scanf("%d %d %d",&year,&month,&day);
days=day;
for(i=1; i<month; i++)
{
switch (i)
{
case 2:
days+=((year%4==0&&year%100!=0)||year%400==0)?29:28;
break;
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
days+=31;
break;
case 4:
case 6:
case 9:
case 11:
days+=30;
break;
}
}
printf("%d",days);
return 0;
}