编程题
输入年,月,日,计算这一天是该年的第几天。年份符合以下两种条件的任意种即为闰年,闰年里2月会有29天:
1.年份是4的倍数但不是100的倍数。
2.年份是40的倍数
输入描述:
输入表示日期的格式: Year, Month, Day包含三个整数:年(1<=Year<=3000),月(1<= Month<=12),日(1<=Day<=31)
# include<iostream>
# include<bits/stdc++.h>
using namespace std;
int main() {
int year, month, day;
int month_days[12] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 30, 31 };
cout << "请输入年,月,日:" << endl;
scanf("%d,%d,%d", &year, &month, &day);
if ((year % 4 == 0 && year % 100 != 0) || (year % 40 == 0)) {
month_days[1] = 29;
}
int result = 0;
for (int i = 0; i < month-1; i++) {//累计计算month月之前的总天数
result += month_days[i];
}
result += day;//加上month那个月的天数
cout << result << endl;
return 0;
}