以下是使用 C 语言解决此问题的代码: ```c #include <stdio.h> struct Date { int year; int month; int day; }; int isLeapYear(int year) { return (year % 4 == 0 && year % 100!= 0) || year % 400 == 0; } int daysInMonth(int month, int year) { int days[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; if (month == 2 && isLeapYear(year)) { return 29; } return days[month - 1]; } int main() { struct Date date; scanf("%d%d%d", &date.year, &date.month, &date.day); int days = 0; for (int i = 1; i < date.month; i++) { days += daysInMonth(i, date.year); } days += date.day; printf("%d\n", days); return 0; } ``` [2024-10-30 18:44:17 | AI写代码神器 | 291点数解答]