版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 課程設(shè)計報告</b></p><p> 課程名稱 《C++語言》 </p><p> 課題名稱 萬年歷設(shè)計 </p><p> 專業(yè) 計算機科學(xué)與技術(shù) </p><p> 班級 #***
2、*********** </p><p> 學(xué)號 </p><p> 姓名 </p><p> 指導(dǎo)教師 </p><p><b> 目 錄</b></p>
3、<p> 1、設(shè)計題目??????????????????????1</p><p> 2、設(shè)計要求??????????????????????1</p><p> 3、總體設(shè)計??????????????????????1</p><p> 3.1 系統(tǒng)功能框架????????????????? 1</p><p
4、> 3.2 系統(tǒng)功能說明????????????????? 2</p><p> 4、詳細(xì)設(shè)計??????????????????????2</p><p> 4.1 數(shù)據(jù)結(jié)構(gòu)設(shè)計????????????????? 2</p><p> 4.2 程序詳細(xì)源代碼??????????????? 3</p><p>
5、5、運行結(jié)果?????????????????????? 8</p><p><b> 設(shè)計題目:</b></p><p><b> 萬年歷設(shè)計</b></p><p><b> 2、設(shè)計要求:</b></p><p> ?。?)程序運行時,首先給出3個菜單選項的內(nèi)容
6、和輸入提示:</p><p><b> 1 顯示一年的日歷</b></p><p> 2 顯示某一天是星期幾 0 退出</p><p> ?。?)用戶可以通過主菜單選擇不同的選項。若選擇1,則通過輸入年份,顯示輸出該年每個月的日歷。若選擇2,則通過輸入日期,查詢這一天是星期幾。</p><p><b
7、> 3、總體設(shè)計:</b></p><p><b> 3.1系統(tǒng)功能框架</b></p><p><b> (流程圖)</b></p><p> 依據(jù)課程設(shè)計的要求,需要設(shè)計一個菜單功能,進(jìn)入程序后,有菜單可以提供選擇,</p><p> 選擇1,進(jìn)入日期顯示階段,日期顯
8、示完畢,再次進(jìn)入菜單選擇。選擇2,進(jìn)入日期查詢階段,日期查詢完畢,再次進(jìn)入菜單。選擇0,</p><p><b> 退出程序。</b></p><p><b> 3.2系統(tǒng)功能說明</b></p><p><b> ?。?功能板塊 )</b></p><p> 在菜單要求
9、當(dāng)中,要求能夠按年查詢,能夠查詢某天是星期幾。然而,在程序當(dāng)中為了實現(xiàn)這兩個功能,包括了閏年的判斷,日期判斷,日期打印和日期的查詢。功能是由它們共同實現(xiàn)的。</p><p><b> 4、詳細(xì)設(shè)計</b></p><p> 4.1 數(shù)據(jù)結(jié)構(gòu)設(shè)計</p><p> 本程序采用類定義代碼如下:</p><p> cl
10、ass Date</p><p><b> {</b></p><p><b> private:</b></p><p><b> int year;</b></p><p><b> public:</b></p><p&g
11、t; int weekday();</p><p> void disp(int x);</p><p> int isleapyear();</p><p> int monthday(int i);</p><p> void getyear();</p><p><b> };</b&
12、gt;</p><p><b> 類名:Date</b></p><p><b> 數(shù)據(jù)成員:year</b></p><p> 成員函數(shù):void getyear();//輸入年份的函數(shù)</p><p> int isleapyear();//判斷是否是閏年的函數(shù)</p>&
13、lt;p> int weekday();//判斷本月第一天是星期幾的函數(shù)</p><p> int monthday(int i);// 計算每月有幾天的函數(shù)</p><p> void disp(int x); //輸出月份及查詢年份的月歷的函數(shù)</p><p> 及字符串?dāng)?shù)組定義 代碼如下:</p><p> char*
14、weekd[7]={"MON","TUE","WEN","THU","FRI","STA","SUN"};</p><p> 4.2 程序詳細(xì)源代碼</p><p> #include<iostream.h></p>&l
15、t;p> #include<iomanip.h></p><p> void f1();</p><p> void f2();</p><p> int judgeyear(int);</p><p> int monthdays(int ,int); //函數(shù)原型聲明</p>&l
16、t;p> int judgeyear(int year)</p><p><b> {</b></p><p> if((year%400==0)||(year%4==0&&year%100!=0)) //判斷輸入的</p><p><b> 年份是否為閏年模塊</b></p
17、><p><b> return 1;</b></p><p><b> else</b></p><p><b> return 0;</b></p><p><b> }</b></p><p> int monthday
18、s(int year,int month) //計算各個月份的天數(shù)</p><p><b> {</b></p><p> if(month==2)</p><p><b> {</b></p><p> if(judgeyear(year)==1) retur
19、n 29;</p><p> else return 28;</p><p><b> }</b></p><p> else if(month==4||month==6||month==9||month==11)</p><p> return 30;</p><p><b>
20、 else</b></p><p> return 31;</p><p><b> }</b></p><p><b> void f1()</b></p><p><b> {</b></p><p> int year,t,
21、i,month;</p><p> cout<<"請輸入年份:";</p><p> cin>>year;</p><p> t=((year-1)*365+(year-1)/4-(year-1)/100+(year-1)/400+1)%7; //判斷這一年的元旦是星期幾</p><p>
22、 for(int k=1;k<=12;k++)</p><p><b> {</b></p><p> cout<<k<<"月份的日歷如下"<<endl;</p><p> cout<<setw(6)<<"日"<<set
23、w(6)<<"一"<<setw(6)<<"二"<<setw(6)<<"三"<<setw(6)<<"四"<<setw(6)<<"五"<<setw(6)<<"六"<<endl;&l
24、t;/p><p> for(int z=1;z<=t;z++)</p><p> cout<<setw(6)<<' ';</p><p> for(i=1;i<=monthdays(year,k);i++)</p><p> {cout<<setw(6)<<i&l
25、t;<setw(6);</p><p> if((i+t)%7==0)</p><p> cout<<endl;}</p><p> t=(t+monthdays(year,k)%7)%7;</p><p> cout<<endl;</p><p><b> //日歷顯
26、示模塊</b></p><p><b> }</b></p><p><b> }</b></p><p><b> void f2()</b></p><p><b> {</b></p><p> int
27、year,month,day;</p><p> cout<<"請輸入年份:";</p><p> cin>>year;</p><p> cout<<"請輸入月份:";</p><p> cin>>month;</p><p&
28、gt; cout<<"請輸入此年此月相應(yīng)的日期"<<"<1~31>:";</p><p><b> cin>>day;</b></p><p> int l,n,t,w,date(0);</p><p> char *week[]={"星期
29、天","星期一","星期二","星期三","星期四","星期五","星期六"};</p><p> n=(year-1900);</p><p> l=(n-1)/4;</p><p><b> n=l+n;</b&
30、gt;</p><p><b> n=n%7;</b></p><p><b> n=n;</b></p><p> for(int i=1;i<month;i++)</p><p> date+=monthdays(year,i);</p><p> dat
31、e+=day;</p><p><b> n=n+date;</b></p><p><b> n=n%7;</b></p><p> cout<<"\n該天是:"<<week[n];</p><p><b> }//日子查詢模塊<
32、/b></p><p> void main()</p><p><b> {</b></p><p><b> int i=1;</b></p><p> cout<<" -----------------------------
33、---"<<endl;</p><p> cout<<" * *"<<endl;</p><p> cout<<" 歡迎進(jìn)入萬年歷查詢系統(tǒng) "<
34、<endl;</p><p> cout<<" * *"<<endl;</p><p> cout<<" --------------------------------"<&l
35、t;endl<<endl<<endl;</p><p> cout<<"請選擇您的查詢內(nèi)容:"<<endl;</p><p> cout<<" "<<"1.顯示一年的日歷"<<";"<
36、;<endl;</p><p> cout<<" "<<"2.顯示某一天是星期幾"<<";"<<endl;</p><p> cout<<" "<<"
37、;0.退出"<<";"<<endl;</p><p> cout<<"請選擇按鍵"<<"<0-2>:"; //輸出主菜單</p><p><b> while(i)</b></p><
38、p><b> {</b></p><p><b> cin>>i;</b></p><p> if(i>=0&&i<=2)</p><p><b> {</b></p><p><b> switch(i)<
39、;/b></p><p><b> {</b></p><p> case 1: f1(); break;</p><p> case 2: f2(); break;</p><p> case 0: cout<<"謝謝使用,再見!";break;</p>&l
40、t;p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p><b> 5、運行結(jié)果</b></p>&l
41、t;p><b> 1程序運行測試:</b></p><p> 在電腦中打開C++應(yīng)用程序, 首先進(jìn)入VC++6.0,將程序代碼輸入,編譯,組建,調(diào)試。觀察運行結(jié)果,和各個功能情況。</p><p><b> 2 進(jìn)入程序菜單</b></p><p><b> ?。▓D1:菜單頁面)</b>&
42、lt;/p><p> 說明:該頁面表示進(jìn)入菜單選項,根據(jù)選項進(jìn)入相應(yīng)的功能。</p><p><b> 3 1號鍵功能:</b></p><p> ?。▓D2:日歷顯示頁面)</p><p> 說明:進(jìn)入按年查詢功能,輸入想查詢的年份,例如2011年,得到2011年各月的日歷,圖像在此僅展示5,6兩月日歷</p&g
43、t;<p><b> 4 2號鍵功能:</b></p><p> ?。▓D3:星期幾查詢頁面)</p><p> 說明:依次輸入2011 7 1,得到上圖結(jié)果。</p><p> ?。▓D4:星期幾查詢)</p><p> 說明:依次輸入2011 7 2,得到上圖。</p><p>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- c++課程設(shè)計--萬年歷
- 萬年歷c++課程設(shè)計
- 《c++課程設(shè)計》萬年歷
- 萬年歷c++課程設(shè)計
- c++課程設(shè)計報告---萬年歷系統(tǒng)
- c語言課程設(shè)計--萬年歷
- c語言課程設(shè)計--萬年歷
- 萬年歷c語言課程設(shè)計
- c語言課程設(shè)計--萬年歷
- 萬年歷課程設(shè)計--萬年歷電子時鐘
- 萬年歷課程設(shè)計
- 萬年歷課程設(shè)計
- 萬年歷課程設(shè)計
- 萬年歷課程設(shè)計
- 萬年歷課程設(shè)計
- 萬年歷課程設(shè)計
- 萬年歷課程設(shè)計
- c語言課程設(shè)計萬年歷系統(tǒng)
- C語言課程設(shè)計--萬年歷.doc
- c語音電子萬年歷課程設(shè)計
評論
0/150
提交評論