#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 dayOfYear(struct Date date) {
int daysInMonth[] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
if (isLeapYear(date.year)) {
daysInMonth[2] = 29;
}
int sum = 0;
for (int i = 1; i < date.month; i++) {
sum += daysInMonth[i];
}
sum += date.day;
return sum;
}
int main() {
struct Date date;
scanf("%d %d %d", &date.
year, &date.
month, &date.
day); int day = dayOfYear(date);
printf("该日在本年中是第 %d 天\n", day
); return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+Ci8vIOWumuS5iee7k+aehOS9k+ihqOekuuaXpeacnwpzdHJ1Y3QgRGF0ZSB7CiAgICBpbnQgeWVhcjsKICAgIGludCBtb250aDsKICAgIGludCBkYXk7Cn07CgovLyDliKTmlq3mmK/lkKbkuLrpl7DlubQKaW50IGlzTGVhcFllYXIoaW50IHllYXIpIHsKICAgIHJldHVybiAoeWVhciAlIDQgPT0gMCAmJiB5ZWFyICUgMTAwICE9IDApIHx8ICh5ZWFyICUgNDAwID09IDApOwp9CgovLyDorqHnrpfor6Xml6XlnKjmnKzlubTkuK3mmK/nrKzlh6DlpKkKaW50IGRheU9mWWVhcihzdHJ1Y3QgRGF0ZSBkYXRlKSB7CiAgICBpbnQgZGF5c0luTW9udGhbXSA9IHswLCAzMSwgMjgsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzEsIDMwLCAzMSwgMzAsIDMxfTsKICAgIGlmIChpc0xlYXBZZWFyKGRhdGUueWVhcikpIHsKICAgICAgICBkYXlzSW5Nb250aFsyXSA9IDI5OwogICAgfQogICAgaW50IHN1bSA9IDA7CiAgICBmb3IgKGludCBpID0gMTsgaSA8IGRhdGUubW9udGg7IGkrKykgewogICAgICAgIHN1bSArPSBkYXlzSW5Nb250aFtpXTsKICAgIH0KICAgIHN1bSArPSBkYXRlLmRheTsKICAgIHJldHVybiBzdW07Cn0KCmludCBtYWluKCkgewogICAgc3RydWN0IERhdGUgZGF0ZTsKICAgIHNjYW5mKCIlZCAlZCAlZCIsICZkYXRlLnllYXIsICZkYXRlLm1vbnRoLCAmZGF0ZS5kYXkpOwogICAgaW50IGRheSA9IGRheU9mWWVhcihkYXRlKTsKICAgIHByaW50Zigi6K+l5pel5Zyo5pys5bm05Lit5piv56ysICVkIOWkqVxuIiwgZGF5KTsKICAgIHJldHVybiAwOwp9Cg==