




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、信息學(xué)院課程設(shè)計題目: 年歷處理程序的設(shè)計 姓名: 學(xué)號: 班級: 課程: C+程序設(shè)計 任課老師: 2012年6月 課程設(shè)計任務(wù)書及成績評定題目年歷處理程序的設(shè)計課程設(shè)計的任務(wù)及要求: 輸入一個年份,輸出該年的日歷;輸入年月,輸出該月的日歷;輸入年月日,輸出今天是本年度的第幾天。課程設(shè)計所需的軟件、硬件等 軟件:VC+ 6.0 硬件:CPU>=1GHz課程設(shè)計進(jìn)度計劃:2012年 5月23日:編輯源程序2012年 5月26日:運(yùn)行,記錄結(jié)果、截圖2012年 5月27日:進(jìn)行整個課程設(shè)計的完善任課教師評語 成績: 教師簽名: 日期: 目錄1. 實驗名稱 年歷處理程序的設(shè)計2.實驗?zāi)康募耙?/p>
2、求 描述課程設(shè)計的目的,約束條件,使目標(biāo)達(dá)到一致。3.實驗環(huán)境 回顧并且復(fù)習(xí)課本內(nèi)容,想好需要的硬件設(shè)施與需要安裝的C+軟件。4.實驗設(shè)計方案 分析課程設(shè)計的實現(xiàn)方法,詳細(xì)介紹項目的操作步驟。5.測試結(jié)果及結(jié)論課程設(shè)計的屏幕顯示,并加以簡單的文字描述,注意程序運(yùn)行要用到的各種算法等知識。6. 小結(jié)主要說明程序設(shè)計的特點,進(jìn)行了哪些知識方面的拓展,在哪些方面得到了幫助,以及實現(xiàn)編程過程中得到的感悟。一:實驗名稱: 年歷處理程序的設(shè)計二:實驗?zāi)康募耙螅?、實驗?zāi)康模海?) 進(jìn)一步鞏固和加深對“C+程序設(shè)計”課程基本知識的理解和掌握,了解C+語言在項目開發(fā)中的應(yīng)用。(2) 學(xué)習(xí)程序設(shè)計開發(fā)的一般方
3、法,了解和掌握項目開發(fā)過程及方式,培養(yǎng)正確的設(shè)計思想和分析問題、解決問題的能力,特別是項目設(shè)計能力。 2、要求:輸入一個年份,輸出該年的日歷;輸入年月,輸出該月的日歷;輸入年月日,輸出今天是本年度的第幾天。三:實驗環(huán)境:實驗前,先復(fù)習(xí)和回顧課本,在電腦上安裝Visual C+等集成軟件。四:實驗設(shè)計方案: 1.主菜單:程序是通過類的成員函數(shù)void operate( );來實現(xiàn)對主菜單的輸入與輸出的處理。 2.數(shù)據(jù)功能:程序是由類的成員函數(shù)void print Year( );實現(xiàn)各年的輸出;由void print Month( );來實現(xiàn)各月的輸出;由void print Day( );實現(xiàn)
4、各天的輸出。3. 源程序:#include<iostream>#include<iomanip>#include<string>#include<cmath>using namespace std;void set_year( );void set_month( );void set_day();int firstday(int y);/第一天是周幾void coutmonth(int m);/輸出月int monthfirstday(int year);/月的第一天是星期幾int daysofmonth(int m);/顯示月日歷int mou
5、thday();/計算是第多少天int year,month,day,weekday;/輸出月的標(biāo)題void monthhead(int m)cout<<"n"cout<<m<<"月 日 一 二 三 四 五 六"<<"n"/輸出標(biāo)題void couthead(int m)int i;cout<<"n"cout<<m<<"月 日 一 二 三 四 五 六"<<"n"cout<&l
6、t;" "for(i=0;i<weekday;i+)cout<<" "/第一天是星期幾int firstday(int year)double s;s=floor(year-1+(year-1)/4.0-(year-1)/100.0+(year-1)/400.0+1);return (int)s%7;/月的第一天是星期幾int monthfirstday(int year)int x,t;x=firstday(year);if(year%4=0&&year%100!=0|year%400=0) t=1;else t=0;
7、switch(month)case 1:break;case 2:x=(31+x)%7;break;case 3:x=(59+t)%7;break;case 4:x=(90+t)%7;break;case 5:x=(120+t)%7;break;case 6:x=(151+t)%7;break;case 7:x=(181+t)%7;break;case 8:x=(212+t)%7;break;case 9:x=(243+t)%7;break;case 10:x=(273+t)%7;break;case 11:x=(304+t)%7;break;case 12:x=(334+t)%7;break
8、;return x;/輸出月void coutmonth(int m)int i,days;couthead(m);days=daysofmonth(m);for(i=1;i<=days;i+)cout<<setw(5)<<i;weekday=(weekday+1)%7;if(weekday=0)cout<<"n"<<" "/計算是第多少天int mouthday()int k=day,t,num;if(year%4=0&&year%100!=0|year%400=0) t=1;els
9、e t=0;switch(month)case 1:num=k;break;case 2:num=31+k;break;case 3:num=59+t+k;break;case 4:num=90+t+k;break;case 5:num=120+t+k;break;case 6:num=151+t+k;break;case 7:num=181+t+k;break;case 8:num=212+t+k;break;case 9:num=243+t+k;break;case 10:num=273+t+k;break;case 11:num=304+t+k;break;case 12:num=334
10、+t+k;break;cout<<endl;cout<<year<<"年"<<month<<"月"<<day<<"日"<<"是一年中的第"cout<<num<<"天。n"<<"n 離本年結(jié)束還有"<<365+t-num<<"天。"<<endl;return 0;/輸入年void set_ye
11、ar( )cout<<"n請 輸 入 年 份 : "cin>>year;/輸入月void set_month()cout<<"n請 輸 入 月 份 : "cin>>month;/輸入天void set_day()cout<<"n請 輸 入 日 : "cin>>day;/計算每月的天數(shù)int daysofmonth(int m)switch (m)case 1:case 3:case 5:case 7:case 8:case 10:case 12:return 31
12、;case 4:case 6:case 9:case 11:return 30;case 2:if(year%4=0&&year%100!=0)|year%400=0)return 29;elsereturn 28;default:return 0;/首頁int inter_face()cout<<"*"<<endl; cout<<"tt歡迎使用.日歷處理系統(tǒng)"<<endl<<endl;cout<<"tt 主菜單 "<<endl;cou
13、t<<"tt1 輸入年顯示年日歷"<<endl; cout<<"tt2 輸入年月顯示月日歷"<<endl; cout<<"tt3 顯示某一天是一年的第幾天"<<endl; cout<<"tt4 退出系統(tǒng)"<<endl; cout<<"*"<<endl; cout<<"t輸入任務(wù)序號:"<<endl;int choose;cin>
14、>choose;return choose;int exit_test()/退出cout<<"nt歡 迎 使 用 !再 見!n"<<endl;return 0;/退出 返回一個0值int main()/主函數(shù)int choose; int m;while(m) /功能選擇choose=inter_face();switch(choose)case 1:int i;set_year( );weekday=firstday(year);cout<<endl;cout<<" "<<year<
15、;<"年"<<endl;for(i=1;i<=12;i+)coutmonth(i);cout<<"n"system("pause");break;case 2:set_year( );set_month( );weekday=monthfirstday(year);cout<<endl;cout<<year<<"年"<<endl;for(i=1;i<=12;i+)if(i=month)coutmonth(i);cout<
16、<"n" system("pause");break;case 3:set_year( );set_month( );set_day();mouthday(); system("pause");break;case 4:m=exit_test();break;default :cout<<"ntt輸 入 有 誤!"<<endl;cout<<"nt重 新 輸 入."<<endl;system("pause");break;return 0;五:運(yùn)行結(jié)果及結(jié)論: 數(shù)據(jù)處理測試:1. 年的輸出:2:月的輸出:3:
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 征信合規(guī)管理培訓(xùn)課件
- 語言培訓(xùn)班課件制作指南
- 急性乳房炎的護(hù)理
- 感恩團(tuán)隊培訓(xùn)
- 中醫(yī)噯氣病例分享
- 氣道異物的護(hù)理
- 倉庫管理的安全培訓(xùn)
- 新教師法培訓(xùn)
- 小學(xué)國教育主題班會
- 天津市2025年中考語文模擬試卷7(含答案)
- 小學(xué)四年級下冊數(shù)學(xué)全單元測試題(及答案)
- 2025年福建石獅國有投資發(fā)展集團(tuán)招聘筆試參考題庫含答案解析
- 四川省綿陽市2025屆高三上學(xué)期第二次診斷性考試語文試題(含答案)
- 各類設(shè)備安全操作規(guī)程大全
- 大體積混凝土施工專項施工方案
- 黔西南民族職業(yè)技術(shù)學(xué)院《項目特性與標(biāo)準(zhǔn)化管理方法》2023-2024學(xué)年第一學(xué)期期末試卷
- 中醫(yī)呼吸慢病管理方法
- 醫(yī)療機(jī)構(gòu)環(huán)境表面消毒與消毒管理規(guī)范
- 無線充電技術(shù)應(yīng)用
- 村衛(wèi)生室工作分工協(xié)議書范文
- 數(shù)學(xué)史簡介課件可編輯全文
評論
0/150
提交評論