版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
課程設(shè)計報告課程設(shè)計報告題目:年歷顯示系統(tǒng)姓名:XXX學(xué)號:XXXX專業(yè):XXXX班級:XXX指導(dǎo)教師:XXX職稱:XXX2012年6月20日目錄97.參考文獻(xiàn)13摘要C語言是近年在國內(nèi)外得到迅速推廣應(yīng)用的一種語言。C語言功能豐富,表達(dá)能力強,使用靈活方便,應(yīng)用面廣,目標(biāo)程序效率高,可移植性好,既具有高級語言的優(yōu)點,又具有低級語言的許多特點。因此,C語言特別適合于編寫各種軟件。目前流行的計算機(jī)日歷程序,比較典型的是Windows各版本中的日歷程序以及基礎(chǔ)于該程序所開發(fā)的各種應(yīng)用程序中的日歷程序。然而,這些程序都千篇一律的局限在一個很短的時間范圍內(nèi)。(Windows各個版本一般都局限在1980年至2099年這一范圍內(nèi)),但是,在很多情況下,特別是在眾多的科學(xué)研究領(lǐng)域中,一個時間跨度較大的日歷程序是很有參考價值的。C程序設(shè)計語言充分發(fā)揮了其自身無與倫比的優(yōu)越性,用極短的程序文本填補了這一領(lǐng)域的空白,同時用鐵的事實強有力的告訴世人:C程序設(shè)計語言作為計算機(jī)語言家族的新生事物,其發(fā)展前景是極為廣闊的。【關(guān)鍵字】C語言計算機(jī)日歷程序2.設(shè)計要求輸入一個年份,輸出是在屏幕上顯示該年的日歷。假定輸入的年份在1940-2040年之間;1、輸入年,輸出該年的日歷。2、輸入年月,輸出該月的日歷。3、輸入年月日,輸出距今天還有多少天,星期幾,是否是公歷節(jié)日。3.思想構(gòu)架3.1閏年問題:每400年整一閏,或每4年且不為百年的一閏。(原因:地球繞太陽一周的時間是365天5小時46秒,為了使一年的天數(shù)為整數(shù),將一年的天數(shù)定為365天,余下的時間積累起來,四年就是23小時15分4秒,將近一天,把這一天加在某年的二月而成29天,該年稱為閏年,其它年稱為平年。但四年加一天又多用了44分56秒,這個數(shù)積滿400年為三天。因此400年中只能有97個閏年,所以凡能被400整除,或不能被100整除但能被4整除的年份為閏年。)所以百年%4=0閏或(年%4=0并且年<>0)閏。每4年(3個平年+1個閏年)共208周+5天——注意這個“5天”百年共100*(208周+5天)-1天=5217周+5天——注意這個“5天”(整百年暫設(shè)為平年)每400年共4*(5217周+5天)+1天(整400年閏)=20871周+0天——注意這個“0天”和“1天”(4個整百年只有一個閏年)即400年一個輪回!4.程序#include<stdio.h>}}intmonthdays[12]={31,28,31,30,31,30,31,31,30,31,30,31};intleapyearmonthdays[12]={31,29,31,30,31,30,31,31,30,31,30,31};intyear=2011;intmonth=4;intday=22;intisweekday(inty,intm,intd){intweekday;if(m<3){m+=12;y--;}returnweekday=(2+2*m+3*(m+1)/5+y+y/4-y/100+y/400)%7;intisleapyear(inty){if(y%400==0||y%100!=0&&y%4==0)return1;return0;}voidprint_month(inty,intm){inti=0;intstartday=isweekday(y,m,1);printf("\n%4d/%02d\n",y,m);printf("*****************************\n");for(i=0;i<startday;i++){printf("");if(isleapyear(y)){for(i=1;i<=leapyearmonthdays[m-1];i++){printf("%3d",i);if((startday+i)%7==0)printf("\n");}}else{for(i=1;i<=monthdays[m-1];i++){printf("%3d",i);if((startday+i)%7==0)printf("\n");}voidprint_year(inty){inti;for(i=1;i<=12;i++){print_month(y,i);}}intcounterdays(inty,intm,intd){inttemp=0;intdays=0;inti;for(i=year+1;i<y;i++){if(isleapyear(i))temp++;}if(y-year>=1){if(isleapyear(year)&&month<=2)temp++;if(isleapyear(y)&&m>2||(m==2&&d==29))temp++;for(i=month+1;i<=12;i++)days+=monthdays[i-1];for(i=1;i<m;i++){days+=monthdays[i-1];}days+=(y-year-1)*365;}if(!(year==y&&month==m)){days+=monthdays[month-1]-day+d;}else{days+=d-day;days+=temp;printf("\n今天距%d/%d/%d還有%d天\n",y,m,d,days);returndays;}voidsetday(inty,intm,intd){year=y;month=m;day=d;}voidmain(){inttemp;inty,m,d;charch;do{printf(〃請輸入要查詢的方式(1.查詢年歷2.查詢月歷3.計算日期4.設(shè)置當(dāng)前日期(%d/%d/%d)):",year,month,day);scanf(〃%d〃,&temp);switch(temp){case1:printf("請輸入年份(ep:2011):");scanf(〃%d〃,&y);print_year(y);break;case2:printf("請輸入年月(ep:2011/4):");scanf(〃%d/%d〃,&y,&m);print_month(y,m);break;case3:printf("請輸入日期(ep:2011/4/22):");scanf("%d/%d/%d",&y,&m,&d);counterdays(y,m,d);break;case4:printf("請輸入當(dāng)天日期(ep:2011/4/22):");scanf("%d/%d/%d",&y,&m,&d);setday(y,m,d);break;default:break;}printf(〃\n\n是否繼續(xù)?(Y鍵繼續(xù),任意鍵退出)〃);getchar();scanf("%c",&ch);}while(ch=='y'||ch=='Y');}5.程序運行界面
選擇查詢方式
輸入年,查詢該年的日歷。
先設(shè)置當(dāng)前日期,再計算日期。
輸入年月,查詢該月的日歷。6.總結(jié)通過本項課程設(shè)計也培養(yǎng)了我獨立思考、綜合運用所學(xué)有關(guān)相應(yīng)知識的能力,掌握工程軟件設(shè)計的基本方法,強化上機(jī)動手編程能力,闖過理論與實踐相結(jié)合的難關(guān)!在這次課程設(shè)計中也知道了自己的動手能力不強有待進(jìn)一部的提高!在設(shè)計過程中不能夠把書本上的知識與實踐相結(jié)合,這也就增加了設(shè)計不好該程序的想法!在設(shè)計過程中的一次次設(shè)計錯誤增加了我放棄的想法!不過經(jīng)過我的努力終于完成了課程設(shè)計!完成該程序后想起自己以前的每一次對自己失去信心,就覺得并不是在知識掌握上打敗了,而是自己對自己缺乏信心!只要自己對自己不失去信心相信就可以完成那些以前認(rèn)為完成不了的事情!也讓我懂得了要想成功首先就必須有很強的自信心!7.參考文獻(xiàn)
源程序參考網(wǎng)址:東華理工大學(xué)學(xué)年課程設(shè)計報告評分表學(xué)生姓名:學(xué)號:xxxx班級:xxxx課程設(shè)計題目:容內(nèi)目項實評選題識知程mt/課>W題合人結(jié)3匕匕^>厶冃5□O1X□能力水平匕匕厶冃識知學(xué)所用應(yīng)練熟匕匕厶冃ryO1X□確正導(dǎo)O1X□-三、工加、聊等應(yīng)圖能制O1X□/
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 28773-2024齒楔帶
- 《地下工程施工》大學(xué)筆記
- 平?jīng)鍪修r(nóng)村飲水安全工程可行性分析報告28113
- 2024年10版小學(xué)英語第5單元真題試卷
- 文學(xué)文化常識(測試)-2023年中考語文一輪復(fù)習(xí)(原卷版)
- 2024年移動通訊手機(jī)配套集成電路項目投資申請報告代可行性研究報告
- 2024年節(jié)能型電冰箱、空調(diào)器項目資金籌措計劃書代可行性研究報告
- 2024年免疫調(diào)節(jié)藥物項目資金申請報告代可行性研究報告
- 詩詞曲閱讀(原卷版)-2025年中考語文復(fù)習(xí)專練
- 規(guī)劃科工作計劃模板8篇
- 租地種香蕉合同
- 舊市場提升改造方案
- 統(tǒng)編版 七年級上冊(2024修訂) 第四單元 13 紀(jì)念白求恩 課件
- 外匯兌換居間勞務(wù)協(xié)議
- 少兒趣味編程Scratch綜合實戰(zhàn)《小車巡線》教學(xué)設(shè)計
- 第4課《公民的基本權(quán)利和義務(wù)》(課件)-部編版道德與法治六年級上冊
- 糖尿病患者體重管理專家共識(2024年版)解讀
- 中國融通集團(tuán)招聘筆試題庫2024
- ICU譫妄患者的護(hù)理
- 村醫(yī)衛(wèi)生室考勤管理制度
- 2024新版英語英語3500個單詞分類大全
評論
0/150
提交評論