提交时间:2025-03-02 22:29:54
运行 ID: 61542
#include <bits/stdc++.h> using namespace std; bool isLeap(int y){//判断闰年和平年的函数,返回布尔值 return y%4==0&&y%100!=0||y%400==0; } int main(){ const int Y=2021, M=1, D=14, W=4; // 定义今日日期 int days[13] = {0,31,28,31,30,31,30,31,31,30,31,30,31}; //每个月份的天数 days[2] = 28 + (int)isLeap(Y);//2月平年为28天 int y, m, d; cin >> y >> m >> d;//输入年 月 日 int i=Y, j=M, k=D, w=W, cnt=0; while (!(i==y&&j==m&&k==d)){//循环至满足条件 cnt++;//总数累加 w++;//星期累加 if (w>7){//一星期七天 w=1;//大于7从1开始 cout<<"星期w="<<w<<endl; } k++;//天数 if (k>days[j]){//循环至条件满足 k=1; j++; if (j>12){ j=1; i++; days[2]=28+(int)isLeap(i);//2月28天 } } } cout<<cnt<<endl<< '*' << w << endl; //输出结果 return 0; }