輸入年月日(格式 2015,12,10),累加前幾月天數再加當月天數,閏年且月份>2 時加 1 天。
(year%400==0) || (year%4==0 && year%100!=0)。
#include <stdio.h>
int main() {
int day, month, year, sum, leap;
printf("\n請輸入年、月、日,格式為:年,月,日(2015,12,10)\n");
scanf("%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("data error"); break;
}
sum += day;
if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)) leap = 1;
else leap = 0;
if (leap == 1 && month > 2) sum++;
printf("這是這一年的第 %d 天。", sum);
printf("\n");
return 0;
}
請輸入年、月、日,格式為:年,月,日(2015,12,10)
2015,10,1
這是這一年的第 274 天。