版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、-. z.第 PAGE 1 頁目錄 TOC o 1-2 u 第1章需求分析 PAGEREF _Toc282154160 h 6第2章概要設(shè)計 PAGEREF _Toc282154161 h 6第3章詳細(xì)設(shè)計 PAGEREF _Toc282154162 h 11第四章運(yùn)行結(jié)果及分析 PAGEREF _Toc282154163 h 171.登陸界面 PAGEREF _Toc282154164 h 172.顯示*年全年日歷 PAGEREF _Toc282154165 h 173.顯示*月日歷 PAGEREF _Toc282154166 h 18第5章課程設(shè)計心得 PAGEREF _Toc282154
2、167 h 20參考文獻(xiàn) PAGEREF _Toc282154168 h 21第1章需求分析1程序運(yùn)行時,首先給出四個菜單項選擇項和輸入提示:圖1-12用戶可以通過主菜單項選擇擇不同選項。輸入1,通過輸入年份可顯示一年每個月份的日歷;輸入2,通過輸入年份和月份中間以空格分開可顯示該月的日歷;假設(shè)輸入3,通過輸入年份月份和日期中間以空格分開可顯示該日的星期;輸入0,則退出查詢系統(tǒng)。第2章 概要設(shè)計菜單項選擇擇界面可通過下面所示函數(shù)時現(xiàn); 主要思路:通過while語句與swichcase以及if條件語句實現(xiàn)菜單的循環(huán)功能和不同選項的功能實現(xiàn)。閏年與平年的判斷:代碼如下: void main() i
3、nt year,month,day,a,b; while(1) printf(nnnn);printf( *nn);printf( * * n);printf( 歡送進(jìn)入萬年歷查詢系統(tǒng) n); printf( * * nn); printf( *nnn);printf( 1 年歷 2 月歷 3 日歷 4 退出n);printf( 請輸入您的選擇,按回車鍵確定: );scanf(%d,&b); switch(b) case 1: printf(n請輸入您要查的年份: ); scanf(%d,&year); a=*3(year,1,1); if(a=0) printf(錯誤!請您重新輸入。n);
4、break; nianli(year); break; case 2: printf(n請輸入您要查的年和月,年月之間用空格隔開: ); scanf(%d%d,&year,&month); a=*3(year,month,1);if(a=0) printf(錯誤!請您重新輸入。n); break; yueli(year,month); break; case 3: printf(n請輸入您要查的年月日,年月日之間用空格隔開: ); scanf(%d%d%d,&year,&month,&day); a=*3(year,month,day); if(a=0) printf(錯誤!請您重新輸入。n)
5、; break; rili(year,month,day); break; case 4: e*it(0); default: printf(錯誤!請您重新輸入。nn); 顯示一年的日歷,可通過函數(shù)void *1實現(xiàn),思路如下:先判斷輸入年份是否為閏年,假設(shè)為閏年,則定義二月為29天,通過調(diào)用函數(shù)判斷是否為閏年及每個月的天數(shù)依次打印12個月的月份打印每個月的日歷,顯示個每個月的日歷:printf(%2s%2s%2s%2s%2s%2s%2sn, 星期日 , 星期一 , 星期二, 星期三 , 星期四 , 星期五 , 星期六 );閏年的判斷:計算所輸入的年份是否可被4整除,假設(shè)不能被整除,為平年。假
6、設(shè)可被4整除,計算此年份能否被100整除,不能被100整除則為閏年。既能被4整除,也能被100整除的年份,假設(shè)也能被400整除,則為閏年,否則為平年。閏年366天,平年365天 圖2-1代碼:int runnian(int year) if(year%4=0&year%100!=0|year%400=0) return 1; else return 0; 判斷*月的天數(shù);通過函數(shù):int day1(int year,int month) int a12=31,28,31,30,31,30,31,31,30,31,30,31;假設(shè)為閏,則二月為29天。 圖2-2代碼:if(runnian(yea
7、r)a1=29;第3章詳細(xì)設(shè)計#include #include /*定義頭文件*/int runnian(int year)/*定義變量*/if(year%4=0&year%100!=0|year%400=0) /*利用函數(shù)判斷輸入年份是閏年還是平年*/return 1;elsereturn 0;int day1(int year,int month)int a12=31,28,31,30,31,30,31,31,30,31,30,31;/*定義數(shù)組確定12個月每個月的天數(shù)*/if(runnian(year) /*如果輸入年份是閏年*/a1=29;/*二月29天*/return amonth
8、-1;int day2(int year,int month,int day)int i,sum=0;for(i=1;imonth;i+)sum+=day1(year,i);sum+=day;return sum;int week1(int year,int month,int day)int number=(year-1)+(year-1)/4-(year-1)/100+(year-1)/400+day2(year,month,day);number%=7;return number;char *Week2(int number)switch(number)/*分類一周七天*/case 0:
9、return 星期日;case 1:return 星期一;case 2:return 星期二;case 3:return 星期三;case 4:return 星期四;case 5:return 星期五;case 6:return 星期六;default:return 錯誤!請您重新輸入。;/*不符和上面七種情況的報錯提示*/void *1(int year,int month,int day)int number=week1(year,month,day);if(runnian(year)printf(閏年);/*年份為閏年則輸出“閏年“*/else printf(平年);printf( %d
10、 年 %d 月 %d 日%10snn,year,month,day,Week2(number);/*按年 月 日輸出結(jié)果*/void *2(int year,int month)int ma*,number,i,j=1;ma*=day1(year,month);number=week1(year,month,1);printf(%2s%2s%2s%2s%2s%2s%2sn, 星期日 , 星期一 , 星期二, 星期三 , 星期四 , 星期五 , 星期六 );/*按照間隔打印日歷for(i=0;inumber;i+)printf( );while(j=ma*)printf(%8d,j);if(i%
11、7=6)printf(n);i+;j+;printf(nn);int *3(int year,int month,int day)if(year0|month12|dayday1(year,month)/*當(dāng)輸入植出現(xiàn)這些情況時*/return 0;/*返回0*/elsereturn 1;/*返回1*/void nianli(int year)int i;printf(n);for(i=1;i=12;i+)if(runnian(year)printf(閏年);else printf(平年);printf( %d 年 %d 月nn,year,i);void yueli(int year,int
12、month)if(runnian(year)printf(閏年);else printf(平年);printf( %d 年 %d 月nn,year,month);*2(year,month);void rili(int year,int month,int day)printf(n);*1(year,month,day);void main()int year,month,day,a,b;while(1)printf(nnnn);printf( *nn);printf( * * n);printf( 歡送進(jìn)入萬年歷查詢系統(tǒng) n);printf( * * nn);printf( *nnn);pr
13、intf( 1 年歷 2 月歷 3 日歷 4 退出n);printf( 請輸入您的選擇,按回車鍵確定: );scanf(%d,&b);switch(b)case 1:/*選擇1時*/printf(n請輸入您要查的年份: );/*給出輸入提示*/scanf(%d,&year);/*輸入查詢的年份*/a=*3(year,1,1);if(a=0)printf(錯誤!請您重新輸入。n);/*輸入植異常時報錯*/break;nianli(year);break;case 2:/*選擇二時*/printf(n請輸入您要查的年和月,年月之間用空格隔開: );/*給出輸入提示*/scanf(%d%d,&yea
14、r,&month);/*輸入需要查詢的年 月*/a=*3(year,month,1);if(a=0)printf(錯誤!請您重新輸入。n);break;yueli(year,month);break;case 3:/*選擇3時*/printf(n請輸入您要查的年月日,年月日之間用空格隔開: );/*給出輸入提示*/scanf(%d%d%d,&year,&month,&day);/*輸入年 月 日*/a=*3(year,month,day);if(a=0)printf(錯誤!請您重新輸入。n);/*輸入植異常時報錯*/break;rili(year,month,day);break;case 4
15、:e*it(0);default:printf(錯誤!請您重新輸入。nn); 第四章 運(yùn)行結(jié)果及分析1.登陸界面 圖4-1登陸界面提供了四個選項進(jìn)展選擇,并提示輸入后的操作方法;2.顯示*年全年日歷圖4-2輸入指令后,依次打印出每個月份的日歷。并顯示平年或者閏年;3.顯示*月日歷 圖4-3第5章課程設(shè)計心得 通過本次課程設(shè)計我第一次通過自己的實踐對書本上的知識進(jìn)展了與生活相關(guān)的運(yùn)用。在這個程序中,主要應(yīng)用了這學(xué)期所學(xué)習(xí)的循環(huán),條件語句,數(shù)組以及調(diào)用函數(shù)。這些知識的應(yīng)用使我對課本內(nèi)容的認(rèn)識得到了加深。 在編寫程序的過程中,也出現(xiàn)了很多錯誤。比方程序語句錯誤導(dǎo)致檢測時連續(xù)報錯;函數(shù)語句編寫錯誤導(dǎo)致輸出結(jié)果與實際不符等。出現(xiàn)這些情況后,通過對一些新知識的學(xué)習(xí)和對網(wǎng)上相關(guān)資料的閱覽,我發(fā)現(xiàn)了自己的程序的問題所在并進(jìn)展了改正。最后得到了正確的結(jié)果。 在程序的編寫完成后,我按照要求對程序進(jìn)展了拓展。在輸出年歷的根底上增加了月歷及確定日期的輸出。本來設(shè)想增加農(nóng)歷生肖功能,但是
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 固體飲料噴霧造粒工崗前實操知識水平考核試卷含答案
- 種畜胚胎移植工崗前設(shè)備維護(hù)考核試卷含答案
- 水聲測量工成果考核試卷含答案
- 醫(yī)患關(guān)系非語言溝通技巧
- 國內(nèi)醫(yī)患關(guān)系對策研究
- 2026年上半年曲靖師范學(xué)院招聘碩士及以上工作人員備考題庫(12人)及1套參考答案詳解
- 金友產(chǎn)品智能化2015.12.18
- 企業(yè)合同管理制度
- 2025北京市大興區(qū)衛(wèi)生健康委員會面向應(yīng)屆畢業(yè)生招聘工作人員65人備考題庫及一套答案詳解
- 老年術(shù)后急癥非典型癥狀處理教學(xué)
- 2025年全國碩士研究生考試《管理類聯(lián)考綜合能力》試題及答案
- 護(hù)理質(zhì)量管理質(zhì)控方案2026
- 《低碳醫(yī)院評價指南》(T-SHWSHQ 14-2025)
- 馬的文化介紹
- 四川省石室中學(xué)2025-2026學(xué)年高一上數(shù)學(xué)期末教學(xué)質(zhì)量檢測試題含解析
- 二年級數(shù)學(xué)計算題專項練習(xí)1000題匯編集錦
- AI技術(shù)在人力資源管理中的實際應(yīng)用案例分享
- 急診預(yù)檢分診課件教學(xué)
- (完整版)小學(xué)一年級20以內(nèi)加減法混合運(yùn)算3000題(每頁100題-已排版)
- GB/T 46509-2025玩具中揮發(fā)性有機(jī)化合物釋放量的測定
- 2026屆浙江省杭州城區(qū)6學(xué)校數(shù)學(xué)七年級第一學(xué)期期末教學(xué)質(zhì)量檢測試題含解析
評論
0/150
提交評論