题解 | #今年的第几天?#
今年的第几天?
https://www.nowcoder.com/practice/ae7e58fe24b14d1386e13e7d70eaf04d
#include <bits/stdc++.h>
using namespace std;
//每个月的天数
int dayOfMonth[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}
};
int runyear(int n){
if(n%400==0||(n%4==0&&n%100!=0)){
return 1;
}
return 0;
}
int main(){
int y,m,d;
scanf("%d %d %d",&y,&m,&d);
int sum=0;
for(int i=1;i<m;i++){//第m个月还没过完,所以先不算m
sum+=dayOfMonth[runyear(y)][i];
}
sum+=d;
cout<<sum<<endl;
return 0;
}


查看8道真题和解析