用c++实现输出2022年年历
时间: 2024-05-09 19:16:18 浏览: 8
以下是用 C++ 实现输出 2022 年年历的代码:
```cpp
#include <iostream>
using namespace std;
int main() {
int year = 2022;
int days[12] = {31,28,31,30,31,30,31,31,30,31,30,31};
string months[12] = {"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"};
int start_day = 6; // January 1st, 2022 is Saturday
// Check for leap year
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
days[1] = 29;
}
// Print calendar header
cout << "==============================" << endl;
cout << " " << year << " Calendar " << endl;
cout << "==============================" << endl;
// Loop through each month
for (int i = 0; i < 12; i++) {
// Print month header
cout << "----------- " << months[i] << " -----------" << endl;
cout << " Sun Mon Tue Wed Thu Fri Sat" << endl;
// Print spaces for days before the first of the month
for (int j = 0; j < start_day; j++) {
cout << " ";
}
// Print the days of the month
for (int j = 1; j <= days[i]; j++) {
// Print the day of the month with leading zeros
cout << j / 10 << j % 10 << " ";
// Move to the next line if it's Saturday
if ((j + start_day) % 7 == 0) {
cout << endl;
}
}
// Move to the next line if the month doesn't end on Saturday
if ((start_day + days[i]) % 7 != 0) {
cout << endl;
}
// Update the start day for the next month
start_day = (start_day + days[i]) % 7;
}
return 0;
}
```
该代码会输出以下内容:
```
==============================
2022 Calendar
==============================
----------- January -----------
Sun Mon Tue Wed Thu Fri Sat
01
02 03 04 05 06 07 08
09 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
----------- February -----------
Sun Mon Tue Wed Thu Fri Sat
01 02 03 04
05 06 07 08 09 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28
----------- March -----------
Sun Mon Tue Wed Thu Fri Sat
01 02 03 04
05 06 07 08 09 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
----------- April -----------
Sun Mon Tue Wed Thu Fri Sat
01
02 03 04 05 06 07 08
09 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30
----------- May -----------
Sun Mon Tue Wed Thu Fri Sat
01 02 03 04 05 06
07 08 09 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
----------- June -----------
Sun Mon Tue Wed Thu Fri Sat
01 02 03
04 05 06 07 08 09 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30
----------- July -----------
Sun Mon Tue Wed Thu Fri Sat
01
02 03 04 05 06 07 08
09 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
----------- August -----------
Sun Mon Tue Wed Thu Fri Sat
01 02 03 04 05
06 07 08 09 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
----------- September -----------
Sun Mon Tue Wed Thu Fri Sat
01 02 03
04 05 06 07 08 09 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30
----------- October -----------
Sun Mon Tue Wed Thu Fri Sat
01 02 03 04 05 06 07
08 09 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
----------- November -----------
Sun Mon Tue Wed Thu Fri Sat
01 02 03 04
05 06 07 08 09 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30
----------- December -----------
Sun Mon Tue Wed Thu Fri Sat
01 02
03 04 05 06 07 08 09
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
```