版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 打印年歷</b></p><p><b> 設計報告</b></p><p><b> 姓名:</b></p><p><b> 學號:</b></p><p><b> 專業(yè):</b></
2、p><p><b> 指導教師:</b></p><p><b> 目 錄 </b></p><p><b> 【摘要】3</b></p><p> 第1章 概述 (_黑體小二號字)4</p><p> 1.1 系統(tǒng)實現(xiàn)的目標 (黑體小三號
3、字)4</p><p> 1.2 系統(tǒng)實現(xiàn)方案4</p><p> 1.3 系統(tǒng)實現(xiàn)環(huán)境4</p><p> 1.4 具體的開發(fā)方法4</p><p> 第2章 系統(tǒng)設計5</p><p> 2.1 系統(tǒng)功能設計5</p><p> 2.2 數(shù)據(jù)設計5</p>
4、;<p> 2.3 界面的設計6</p><p> 第3章 系統(tǒng)實現(xiàn)7</p><p><b> 參考文獻8</b></p><p><b> 【摘要】</b></p><p> 本次課程設計的內(nèi)容是設計一個能輸出指定年份日歷的程序。用戶輸入指定年份,如2012,并可輸
5、出2012年12個月的所有日歷。該日歷程序解決了兩個問題:一是判斷這一年是否是閏年;二是確定該年的第一天是星期幾。其中,isleap(y)函數(shù)式用于判斷y年是否是閏年,daysofmonth(m)函數(shù)用于計算返回year年m月的天數(shù),firstday(y)函數(shù)通過從公元第一天為星期天計算出y年第1天使星期幾。該程序簡單明了,成功的實現(xiàn)了設計要求。</p><p><b> 【關鍵詞】</b>
6、;</p><p> 日歷 閏年 函數(shù)</p><p><b> 第1章 概述 </b></p><p> 1.1 系統(tǒng)實現(xiàn)的目標 </p><p> 熟練地掌握用c語言編寫日歷程序,使一年的12個月份能完整的呈現(xiàn)出來,鞏固對C語言課程內(nèi)容和知識的掌握。</p><p> 1.2
7、系統(tǒng)實現(xiàn)方案</p><p> 運用C語言將日歷程序系統(tǒng)化,通過編寫代碼,調(diào)試運行,實現(xiàn)體統(tǒng)目標。</p><p> 1.3 系統(tǒng)實現(xiàn)環(huán)境</p><p> 在XP操作系統(tǒng)下VC6.0的開發(fā)平臺。</p><p> 1.4 具體的開發(fā)方法</p><p> 1.用 isleap(y)函數(shù)式判斷y年是否是閏年,
8、因為閏年和平年的天數(shù)是不一樣的。</p><p> 2.用daysofmonth(m)函數(shù)計算返回year年m月的天數(shù)。</p><p> 3.用firstday(y)函數(shù)通過從公元第一天為星期天計算出y年第1天是星期幾。</p><p> 4.一步步編寫程序,調(diào)試程序,連接運行程序。</p><p><b> 第2章 系統(tǒng)
9、設計</b></p><p> 2.1 系統(tǒng)功能設計</p><p><b> 基本功能: </b></p><p> 1.用 isleap(y)函數(shù)式判斷y年是否是閏年,因為閏年和平年的天數(shù)是不一樣的。</p><p> 2.用daysofmonth(m)函數(shù)計算返回year年m月的天數(shù)。</
10、p><p> 3.用firstday(y)函數(shù)通過從公元第一天為星期天計算出y年第1天是星期幾。</p><p><b> 2.2 數(shù)據(jù)設計</b></p><p><b> 2.3 界面的設計</b></p><p><b> 第3章 系統(tǒng)實現(xiàn)</b></p>
11、<p><b> ?。?)代碼如下:</b></p><p> #include <stdio.h></p><p> void month(int m); /*函數(shù)說明*/</p><p> void head(int m); /*函數(shù)說明*/</p><p>
12、int daysofmonth(int m); /*函數(shù)說明*/</p><p> int isleap(int y); /*函數(shù)說明*/</p><p> int firstday(int y); /*函數(shù)說明*/</p><p> int year,weekday; /*全局變量定義*/&
13、lt;/p><p><b> main()</b></p><p><b> {</b></p><p><b> int i;</b></p><p> printf("輸入年份:");</p><p> scanf(&quo
14、t;%d",&year);</p><p> weekday=firstday(year); /*weekday為year年份元月一日的星期號*/</p><p> printf("\n\n");</p><p> printf(" %d年\n",year); /
15、*17個空格*/</p><p> for(i=1;i<=12;i++) /*輸出year年份12個月的日歷信息*/</p><p><b> {</b></p><p><b> month(i);</b></p><p> printf("\n"
16、);</p><p><b> }</b></p><p> printf("\n\n");</p><p><b> }</b></p><p> void month(int m) /*輸出第m月份的日歷信息*/</p><p>&l
17、t;b> {</b></p><p> int i,days;</p><p><b> head(m);</b></p><p> days=daysofmonth(m);</p><p> for(i=1;i<=days;i++)</p><p><b&
18、gt; {</b></p><p> printf("%5d",i);</p><p> weekday=(weekday+1)%7;</p><p> if(weekday==0) /*打印下一個之前是否換行*/</p><p><b> {</b></p>
19、;<p> printf("\n "); /*3個空格*/</p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> void head(int m)
20、 /*輸出第m月份的頭部信息*/</p><p><b> {</b></p><p><b> int i;</b></p><p> printf("\n%d月 日 一 二 三 四 五 六\n",m);</p><p> prin
21、tf(" "); /*3個空格*/</p><p> for(i=0;i<weekday;i++)</p><p> printf(" "); /*5個空格*/</p><p><b> }</b></p><p> int
22、 daysofmonth(int m) /*返回year年m月的天數(shù)*/</p><p><b> {</b></p><p><b> switch(m)</b></p><p><b> {</b></p><p><b> case 1:&
23、lt;/b></p><p><b> case 3:</b></p><p><b> case 5:</b></p><p><b> case 7:</b></p><p><b> case 8:</b></p><
24、;p><b> case 10:</b></p><p> case 12:return 31;</p><p><b> case 4:</b></p><p><b> case 6:</b></p><p><b> case 9:</b&
25、gt;</p><p> case 11:return 30;</p><p> case 2:if(isleap(year))</p><p> return 29;</p><p><b> else</b></p><p> return 28;</p><p&
26、gt;<b> }</b></p><p><b> return 0;</b></p><p><b> }</b></p><p> int isleap(int y) /*判斷y年是否為閏年*/</p><p><b> {&l
27、t;/b></p><p> return((y%4==0 && y%100!=0)||y%400==0);</p><p><b> }</b></p><p> int firstday(int y) /*從公元第1天為星期天算出y年第1天是星期幾*/</p><p>
28、<b> {</b></p><p> long n=y*365+1;</p><p><b> int i;</b></p><p> for(i=1;i<y;i++) /*補上所有的閏年的天數(shù)*/</p><p> n+=isleap(i);</p>
29、<p> return n%7;</p><p><b> }</b></p><p><b> ?。?)運行結果</b></p><p><b> 參考文獻</b></p><p> (1)楊文君 楊柳. 編著C語言程序設計教程[M].清華大學出版社.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論