/****************************************************************************************
作者:好心情
日期:2007-08-23
描述:输入某年某月某日,判断这一天是这一年的第几天
*****************************************************************************************/
#include <stdio.h>
void main()
{
//声明变量
int year;//年
int month;//月
int day;//日
int number; //保存结果
//获取变量值
printf("\n\t请输入年: ");
scanf("%d",&year);
printf("\n\t请输入月: ");
scanf("%d",&month);
printf("\n\t请输入日: ");
scanf("%d",&day);
number=0;//赋初值
/*计算天数,天数=当月月份减一个月的月份天数之和加上本月的日期数
三月分之后的需要考虑平年闰年*/
switch(month-1)
{
case 11:
number+=30;
case 10:
number+=31;
case 9:
number+=30;
case 8:
number+=31;
case 7:
number+=31;
case 6:
number+=30;
case 5:
number+=31;
case 4:
number+=30;
case 3:
number+=31;
case 2:
/*因为平年闰年2月份天数不一样,所以需要判断
闰年,闰年的定义为能被4整除但不能被100整除
或者能被400整除的年份*/
if ((year%4==0)&&(year%100!=0)||(year%400==0))
{
number+=29;//闰年2月为29天
}
else
number+=28;//平年闰月为28天
case 1:
number+=31;
}
number+=day;
printf("\n今天是%d年第%d天\n",year,number);
}
文章评论(0条评论)
登录后参与讨论