今年的第几天?
输入年、月、日,计算该天是本年的第几天。
#include <stdio.h>
int main() {
int year, month, date, sum = 0;
scanf("%d %d %d", &year, &month, &date);
for (int i = 0; i < month; i++) {
if (i == 1 || i == 3 || i == 5 || i == 7 || i == 8 || i == 10 || i == 12) {
sum += 31;
}
if (i == 4 || i == 6 || i == 9 || i == 11) {
sum += 30;
}
if (i == 2) {
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
sum += 29;
}
else {
sum += 28;
}
}
}
sum += date;
printf("%d", sum);
return 0;
} #include<iostream>
#include<cstdio>
using namespace std;
int dayTable[2][13]={
{0,31,28,31,30,31,30,31,31,30,31,30,31},
{0,31,29,31,30,31,30,31,31,30,31,30,31}
};
bool IsLeapYear(int year){
return(year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);
}
int main(){
int year,month,day;
while(scanf("%d%d%d", &year, &month, &day) != EOF){
int number= 0;
int row = IsLeapYear(year);
for (int j = 0;j < month;++j){
number += dayTable[row][j];
}
number += day;
printf("%d\n",number);
}
return 0;
}