#CS50304. 完善程序3-枚举算法-4打印日历
完善程序3-枚举算法-4打印日历
打印日历
输入月份 m(1≤m≤12),按一定格式打印 2015 年第 m 月的月历。
例如,2015 年 11 月的月历打印效果如下(第一列为周日):
S M T W T F S
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
#include <iostream>
#include <string>
using namespace std;
const int dayNum[] = {-1, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
int m, offset, i;
int main()
{
cin >> m;
cout << "S\tM\tT\tW\tT\tF\tS" << endl; /* '\t'为 TAB 制表符 */
①;
for (i = 1; i < m; i++)
offset = ②;
for (i = 0; i < offset; i++)
cout << '\t';
for (i = 1; i <= ③; i++)
{
cout << ④;
if (i == dayNum[m] || ⑤ == 0)
cout << endl;
else
cout << '\t';
}
return (0);
}
- ①处应填( ){{ select(1) }}
- 28
- 29
- 30
- 31
- ②处应填( ){{ select(2) }}
- dayNum[0]
- dayNum[i-1]
- dayNum[i]
- dayNum[3]
- ③处应填( ){{ select(3) }}
- dayNum[m]
- dayNum[m*m]
- m
- m*m
- ④处应填( ){{ select(4) }}
- &&
- ||
- !
- ==
- ⑤处应填( ){{ select(5) }}
- dayNum[offset]
- !
- (offset+dayNum[0])
- (offset+i)