官术网_书友最值得收藏!

2.4 案例:打印月歷

2.4 案例:打印月歷

日歷能夠幫助用戶選擇日期,避免用戶手動輸入時可能出現的格式錯誤,廣泛應用于各類網站中。本節主要實現打印日歷中一個月的日期。

2.4.1 案例呈現

本節中使用流程控制語句中的選擇結構和循環結構實現如圖2-7所示的打印月歷功能。由于目前還沒有學習日期相關函數,因此本節僅打印2020年1月的月歷。在案例中主要實現以下功能。

1)以表格形式打印2020年1月月歷。

2)日期和星期之間要一一對應。

圖2-7 打印月歷

2.4.2 案例分析

月歷中一般根據星期采用7列形式顯示,第一列代表星期日,第二列代表星期一,第三列代表星期二,以此類推。在編寫代碼時,需要考慮1號是星期幾,例如,2020年1月1日是星期三,因此需要在1號前面輸出3個空格。在學習完第4章函數的相關知識后,可以通過日期函數獲得某一天是星期幾。本例把“2020年1月1日是星期三”作為一個已知條件。根據以上需求,可以得出案例的實現需要分為以下幾個步驟。

1)定義變量$days表示2020年1月份的天數,定義變量$space表示1月1日前需要打印的空格數目,同時代表1月1日是星期幾,定義最終需要打印的字符串$str。

2)在$str中初始化月歷頭部。

3)通過for循環輸出1月1日前的空格。

4)通過for循環輸出每個日期,當空格數目和當前日期之和除以7,余數為1時,需要添加tr開始標記,表示另起一行進行輸出;當空格數目和當前日期之和是7的倍數時,通過添加tr結束標記進行換行。

5)當$days和$space之和不是7的倍數時,需要在最后添加tr結束標記,表示最后一行輸出完畢。

2.4.3 案例實現

經過以上分析,本案例的完整代碼如下,運行結果如圖2-7所示。

主站蜘蛛池模板: 喀喇| 九龙县| 武功县| 宝山区| 松阳县| 平舆县| 五华县| 句容市| 庆安县| 兴城市| 海兴县| 南雄市| 汶上县| 慈溪市| 鹰潭市| 江阴市| 图们市| 商都县| 华坪县| 新源县| 茌平县| 彰化县| 遂川县| 高要市| 平山县| 洛宁县| 宁南县| 西盟| 南召县| 长白| 奉新县| 宁陕县| 天津市| 松江区| 五家渠市| 南安市| 张家界市| 剑河县| 银川市| 二连浩特市| 绿春县|