定义一个结构体变量(包括年月日)。计算某日在一年中是第几天?(注意还要有闰年的判断)
的有关信息介绍如下:
#include struct date{ int year; int month; int day;}date;void main() { int sum=0,leap; printf("\n请输入日期(年,月,日)\n"); scanf("%d,%d,%d",&date.year,&date.month,&date.day); switch(date.month)//先计算某月以前月份的总天数。 { case 1:sum=0;break; case 2:sum=31;break; case 3:sum=59;break; case 4:sum=90;break; case 5:sum=120;break; case 6:sum=151;break; case 7:sum=181;break; case 8:sum=212;break; case 9:sum=243;break; case 10:sum=273;break; case 11:sum=304;break; case 12:sum=334;break; default:printf("data error"); break; } sum=sum+date.day;//再加上某天的天数。 if(date.year%400==0||(date.year%4==0&&date.year%100!=0)) leap=1; else leap=0; if(leap==1&&date.month>2)//如果是闰年且月份大于2,总天数应该加一天。 sum++; printf("这天是当年的第 %d 天。\n",sum); }