版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
萬年歷的設(shè)計(jì)1幕上輸出該年的年歷(包括每月的天數(shù)和所對(duì)應(yīng)的星期2年月,輸出該月的月歷。:4用于控制變換不同年、月、日的顯示。即:當(dāng)前若正在year表示年份的變量month表示月份的變量day表示日期的變量selecti表示月份的變量j表示一個(gè)月中的某一天的變量sum判斷某天是一年中的第幾天的變量a[]表示每月天數(shù)的數(shù)組變量year1系統(tǒng)時(shí)間年份的變量month1系統(tǒng)時(shí)間月份的變量day1系統(tǒng)時(shí)間日期的變量#include"time.h" /*#include"stdio.h"#include"math.h"#include"windows.h"#include"conio.h"#define /*#define #define #define #define #define inteachyeartotal(intyear,intmonth,intday); /*intcounterdays(intyear,intmonth,intday);intnowtime(intyear,intmonth,intday);intweek(intyear,intmonth,intday);intmaxDay(intyear,intmonth);intisleap(intyear);voidwhatweek(intyear,intmonth,intday);voiddisplay(intyear,intmonth);voiddisplay2(intyear,intmonth);voiddisplay3(intyear,intmonth,intday);voidsetDay1(intyear,intmonth,intday);voidsetDay2(intyear,intmonth,intday);voidsetDay3(intyear,intmonth,intday);voidjieri(intmonth,intday);voiddisplay1(intyear);voidgetmenu();voidmain()
/*主函數(shù)intyear,month,day,select;ile(1)tmenu();printf("請(qǐng)輸入相應(yīng)數(shù)字:");
/*菜單選擇*/,&select);system("cls");itch(select)case
/*當(dāng)選擇為1時(shí)顯示年歷*/printf(" anf("%d",&year);(year>0&&year<10000)
display1(year);/*調(diào)用函數(shù)*/printf("提示按↑:上一年
:下一年
他鍵:返回菜單\n");setDay1(year,month,day);sestem("cls");printf("輸入無效,重新輸入!\n");eak;case
printf("月歷顯示:輸入年月(如2011,6):");scanf("%d,%d",&year,&month);r<10000&&month>=1&&month<=12)splay2(year,month);printf("提示按←:上個(gè)月按→:下個(gè)月按其他鍵:返回菜單\n");setDay2(year,month,day);sestem("cls");printf("輸入無效,重新輸入!\n");eak;case
printf("日期顯示:輸入年月日(比如2011,6,23):");anf("%d,%d,%d",&year,&month,&day);f(year>0&&year<10000&&month>=1&&month<=12&&day>=1&&day<=maxDay(ar,month))splay3(year,month,day);printf("提示按PageUp:前一天 按PageDown:后一天按其他鍵:返回菜單\n\n");setDay3(year,month,day);sestem("cls");printf("輸入無效,重新輸入!\n");eak;case4:(0);default: /*當(dāng)輸入其他數(shù)字時(shí),輸入無效,重新輸入stem("cls");printf("輸入無效,重新輸入!\n");intisleap(intyear)
/*判斷是否為閏年(year%4==0&&year%100!=0||year%400==0)return1;elsereturn0;intmaxDay(intyear,intmonth)/*每月的天數(shù)*/inta[]={31,28,31,30,31,30,31,31,30,31,30,31};
/*每個(gè)月中的天數(shù)if(isleap(year))1]=29;
returna[month-1];inteachyeartotal(intyear,intmonth,intday)
/*判斷某天是一年中的第幾天inti,sum=0;for(i=1;i<month;i++)y(year,i);m+=day;returnsum;intweek(intyear,intmonth,intday)
/*對(duì)天數(shù)進(jìn)行判斷確定是星期幾*/intnumber=(year-1)+(year-1)/4-(year-1)/100+(year-1)/400achyeartotal(year,month,day);number=number%7 returnnumber;voiddisplay(intyear,intmonth)
/*輸出年月intmax,number,i,j=1;x=maxDay(year,month);mber=week(year,month,1);printf("%4s%4s %4s%4s%4s%4s u","Fri","sat");r(i=0;i<number;i++)printf(" /*1號(hào)前的星期補(bǔ)空格*/ile(j<=max)intf("%6d",j);if(i%7==6)");+;+;intf("\n\n");
/*每7格換一行*/voiddisplay1(intyear)intintf("\n");r(i=1;i<=12;i++)printf("%d年%d月\n\n",year,i);splay(year,i);voiddisplay2(intyear,intmonth)printf("\n%d年%d月\n",year,month);splay(year,month);voiddisplay3(intyear,intmonth,intday)whatweek(year,month,day);jieri(month,day);counterdays(year,month,day);
/*輸出年歷/*輸出月歷/*輸出日歷intcounterdays(intyear,intmonth,intday) /*判斷今天距特定日期的天數(shù)intyear1,days0,days1,month1,days,day1;time_ttimep;structtm*p;me(&timep);gmtime(&timep);year1=(1900+p->tm_year)month1=(1+p->tm_mon)y1=(p->tm_mday);
/*獲取系統(tǒng)時(shí)間year1、month1、day1分別為年、月、日*/ays0=(year-1)*365+(year-1)/4-(year-1)/100+(year-1)/400+eachyeartotal(year,month,y);ays1=(year1-1)*365+(year1-1)/4-(year1-1)/100+(year1-1)/400+eachyeartotal(year1,nth1,day1);days=days0-days1; /*計(jì)算出兩個(gè)日期之間的時(shí)間差printf("\n 今天距%d 年%d 月%d 日還有%d \n",year,month,day,days);returndays;voidwhatweek(intyear,intmonth,intday)
/*判斷是星期幾intnumber;umber=(year-1)+(year-1)/4-(year-1)/100+(year-1)/400+eachyeartotal(year,month,danumber=number%7 switch(number)caseprintf("\n%d年%d月%d日是星期日",year,month,day);break;caseprintf("\n%d年%d月%d日是星期一",year,month,day);break;caseprintf("\n%d年%d月%d日是星期二",year,month,day);break;caseprintf("\n%d年%d月%d日是星期三",year,month,day);break;caseprintf("\n%d年%d月%d日是星期四",year,month,day);break;caseprintf("\n%d年%d月%d日是星期五",year,month,day);break;caseprintf("\n%d年%d月%d日是星期六",year,month,day);break;fault:stem("cls");printf("出現(xiàn)錯(cuò)誤!\n");voidjieri(intmonth,intday)(month==1)itch(day)case1:printf(",(month==2)itch(day)caseprintf(",這天是情人節(jié)(month==3)itch(day)case8:printf(",eak;caseprintf(",這天是植樹節(jié)(month==4)itch(day)caseprintf(",這天是愚人節(jié)5)switch(day)
/*判斷是否公歷節(jié)日case1:printf(",eak;caseprintf(",這天是青年節(jié)");6)switch(day)caseprintf(",這天是兒童節(jié)7)switch(day)caseprintf(",這天是建黨節(jié)(month==8)itch(day)caseprintf(",這天是建軍節(jié)(month==9)itch(day)caseprintf(",這天是教師節(jié)(month==10)itch(day)caseprintf(",這天是國慶節(jié)
chark;getch();itch(k)caseKEYNUMUp:
/*“↑”年份減小(year<2)stem("cls");printf("警告!超出范圍!\n");eak;ar--;display1(year);ar,month,day);eak;caseKEYNUMDown
/*“↓”年份變大ar++;display1(year);ar,month,day);eak;fault:stem("cls");chark;getch();ch();switch(k)caseKEYNUMLeft: /*“←”月份變小(month<2)nth+=12;ar--;(year<1)stem("cls");printf("警告!超出范圍!\n");eak;nth--;display2(year,month);ar,month,day);eak;caseKEYNUMRight:/*“→”月份變小*/(month>11)nth-=12;ar++;if(year<9999);month++;display2(year,month);tDay2(year,month,day);default:cls");voidsetDay3(intyear,intmonth,intday)控制日期的變換chark;getch();ch();switch(k)caseKEYNUMPageUp:(day<2)month--;(year,month);(month<1)
/*“PageUp”日期變小nth+=12;ar--;(year<1)stem("cls");printf("警告!超出范圍!\n");eak;y--;display3(year,month,day);setDay3(year,month,day);eak;caseKEYNUMPageDown:
day++;Day(year,month))y=1;nth++;(month>12)nth-=12;ar++;(year<10000);di
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 強(qiáng)化酒店安全管理
- 蘇州工會(huì)課程設(shè)計(jì)
- 2024年設(shè)備監(jiān)理師考試題庫含答案(滿分必刷)
- 餐飲食品銷售顧問
- 鞋類設(shè)計(jì)師工作經(jīng)驗(yàn)分享
- 秘書工作中的法律知識(shí)計(jì)劃
- 教育用品采購心得
- 化工行業(yè)安全管理經(jīng)驗(yàn)分享
- 廣州市工商行政管理局網(wǎng)站政務(wù)服務(wù)操作指南
- 餐飲行業(yè)個(gè)人發(fā)展計(jì)劃
- 2024年江蘇省學(xué)業(yè)水平合格性考試全真模擬語文試題(解析版)
- 第六章 綠色化學(xué)與科技課件
- 封窗安全事故免責(zé)協(xié)議書范文
- 北京市海淀區(qū)2023-2024學(xué)年高二上學(xué)期期末考試 生物 含解析
- 小學(xué)數(shù)學(xué)《比的認(rèn)識(shí)單元復(fù)習(xí)課》教學(xué)設(shè)計(jì)(課例)
- 小學(xué)三年級(jí)下冊(cè)數(shù)學(xué)(青島54制)全冊(cè)知識(shí)點(diǎn)總結(jié)
- 汽車修理業(yè)務(wù)受理程序、服務(wù)承諾、用戶抱怨制度
- 河綜合治理工程竣工環(huán)保驗(yàn)收監(jiān)測調(diào)查報(bào)告
- 2024年院感多重耐藥菌醫(yī)院感染預(yù)防與控制技術(shù)指南專項(xiàng)測試題有答案
- 2023-2024學(xué)年山東省泰安市高一下學(xué)期7月期末考試物理試題(解析版)
- 安徽省合肥市2023-2024學(xué)年七年級(jí)上學(xué)期期末數(shù)學(xué)試題(含答案)
評(píng)論
0/150
提交評(píng)論