文章

5

粉丝

0

获赞

1

访问

141

头像
日期计算 题解:
P1051 中南大学机试题
发布于2026年3月12日 21:05
阅读数 30

#include< iostream>
#include< algorithm>
using namespace std;
struct a{
int year;
int month;
int day;
};
int is29(int year, int (&mon)[13]){//int* mon //int mon[]
if((year%400==0)||(year%4==0&&year%100!=0)){
mon[2]=29;
}
else{
mon[2]=28;
}
}
int daysto0(int year){
year--;
int leaps=year/4-year/100+year/400;
返回365*year+闰;
}
int main(){
struct a t1,t2;
int date1,date2;
cin>>date1>>date2;

t1.year=日期1/10000;
t1.month=(date1%10000)/100;
t1.day=date1%100;
t2.year=date2/10000;
t2.month=(date2%10000)/100;
t2.day=date2%100;

int mon[13]={0,31,28,31,30,31,30,31,31,30,31,30,30,31};
IS29(T1.年份,周一);
int days1=t1.day;
for(int i=1;i<t1.month;i++){
days1+=mon[i];
}
IS29(T2.年份,周一);
int days2=t2.day;
for(int i=1;i<t2.month;i++){
days2+=mon[i];
}
整数和1=天数到0(t1.year)+天1;
int sums2=daysto0(t2.year)+days2;
整数结果=ABS(sums1-sums2);
考特<<结果+1;

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发