题目:输入某年某月某日,判断这一天是这一年的第几天?
分析:先根据平年写出一般情况,再根据闰年和平年的不同来增添。
int main()
{
int year; //年份
int month; //月份
int day; //日份
int sum = 0; //日份总和
printf("请输入年月日:");
scanf_s("%d,%d,%d",&year,&month,&day);//输入信息
switch (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("Input error!");
}
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) { //判断闰年
if (month>2) {
printf("%d年%d月%d日是%d的第%d天",year,month,day,year,sum+1+day);
}
}
else {
printf("%d年%d月%d日是%d的第%d天", year, month, day, year, sum + day);
}
return 0;
}