description
輸出公元1900~2023年之間任意一月的月曆。
input
輸入若干行,至eof結束,每行兩個整數,分別表示年和月。
output
對應輸入順序輸出月曆,兩個月曆之間有乙個空行。
每個月曆的第一行為表頭"sun mon tue wen thu fri sat",表示星期日~星期六。第二行開始的每行為乙個星期,把每月的1日~結尾一日對應阿拉伯數字填入其中。每列佔3個字元,其中的數字右對齊,每兩列之間乙個空格分隔,每行最後乙個數字後面不要有空格。最後一日後面不要有空格。
sample input
2019
112019
122020
12020
2sample output
sun mon tue wen thu fri sat
1234567
891011
1213
1415
1617
1819
2021
2223
2425
2627
2829
30sun mon tue wen thu fri sat
1234
5678
9101112
1314
1516
1718
1920
2122
2324
2526
2728
2930
31sun mon tue wen thu fri sat
1234567
891011
1213
1415
1617
1819
2021
2223
2425
2627
2829
3031
sun mon tue wen thu fri sat
1234567
891011
1213
1415
1617
1819
2021
2223
2425
2627
2829
#include
#include
//蔡勒公式
intfirstweekofthemonth
(int year,
int month)
else
w = c /4-
2* c + y + y /4+
(13*(m +1)
)/5+ d -1+
70;week = w %7;
if(week ==0)
week =7;
return week;
}//判斷閏年
intisitaleapyear
(int i)
intmain()
;//13if(
isitaleapyear
(year)
) days[2]
++;int week;
int i, tp =0;
week =
firstweekofthemonth
(year, month)%7
;// printf("%d\n",week);
printf
("sun mon tue wen thu fri sat\n");
//輸出標題
for(i =
1; i <= week; i++
)//輸出空格
for(i =
1; i <= days[month]
; i++
)//輸出月份}if
(tp ==0)
//對最後換行格式的處理
printf
("\n");
else
printf
("\n\n");
}//程式正常結束標記
return0;
}
2020 12 31 輸出月曆
includeint main 首先是輸出頭行,這個不用多說。第二個是將輸入的數作為週幾,加入輸出計數器中,使得每輸出到週六時就可以換行。第三,設定乙個單獨的變數,輸出這是幾號。第四,為了使輸出對齊,用取餘的方法判斷這是一行中第幾個數,如果不是第乙個數就多輸出乙個空格,第七個輸出之後輸出換行符。基本...
嵙大OJ Problem 1100 輸出月曆
time limit 1 sec memory limit 2 mb submit 9205 solved 3759 submit status web board 已知每月1號是星期幾,輸出當月月曆。每個月都按30天算。輸入為乙個整數n,1 n 7。n為1表示本月1日是星期一,n為2表示1號為星期...
山東科技大學OJ輸出月曆問題
description 已知每月1號是星期幾,輸出當月月曆。每個月都按30天算。input 輸入為乙個整數n,1 n 7。n為1表示本月1日是星期一,n為2表示1號為星期二,以此類推,n為7時表示1日為星期天。output 輸出月曆。月曆的第一行為表頭 sun mon tue wen thu fri...