题解 | 日期累加
日期累加
https://www.nowcoder.com/practice/eebb2983b7bf40408a1360efb33f9e5d
#include <stdio.h>
void Nextday(int &year,int &month,int &day){
int arr[]{0,31,28,31,30,31,30,31,31,30,31,30,31};
bool isLeap=false;
if(year%400==0||year%4==0&&year%100!=0){isLeap=true;}
if(isLeap){arr[2]=29;}
++day;
if(day>arr[month]){
day=1;
++month;
}
if(month>12){
month=1;
++year;
}
}
int main(){
int n;
scanf("%d",&n);
for(int i=0;i<n;++i){
int year,month,day;
scanf("%d%d%d",&year,&month,&day);
int num;
scanf("%d",&num);
for(int j=0;j<num;++j){
Nextday(year,month,day);
}
printf("%04d-%02d-%02d\n",year,month,day);
}
return 0;
}
#shit#
查看14道真题和解析

