freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

c語言程序設(shè)計實踐實驗題目(編輯修改稿)

2025-07-04 13:31 本頁面
 

【文章內(nèi)容簡介】 圖21功能模塊圖總函數(shù)流程圖 圖31總函數(shù)流程圖三、詳細設(shè)計(1)由于萬年歷具有以下特點:平年365天(52周+1天),閏年366天(52周+2天)。平年2月28天,閏年2月29天。(2)根據(jù)萬年歷以上特點進行編寫 1)首先對萬年歷年、月、日進行編寫,編寫程序先定義每月的天數(shù)為28天,如月份為12就定義天數(shù)為31天反之如果月份為11就輸出天數(shù)為30天,由上可見2月份為28天但是如果為閏年就有29天就要定義一個數(shù)組存放天數(shù),用while循環(huán)控制。2)再對其中的星期進行編寫:由于公元1月1日設(shè)為星期六,故3月1日為星期三,可以用萬年3月1日星期算法(特別是那個三)由于其公式為:某年3月1日星期幾=(百年%4*5天+年/4*5天+年%4+月星期表+日+2天)%7閏4百年3月1日星期算法(百年%4=0)其公式為:某年3月1日星期幾=(年+年/4+月星期表+日+2天)%7例: 2000年3月1日星期幾=(0+0/4+0+1+2)%7=3%7=星期三平4百年3月1日星期算法(百年%40)其公式為:某年3月1日星期幾=(百年%4*5天+年+年/4+月星期表+日+2天)%7 例:2100年3月1日星期幾=(21%4*5+0/4*5+0%4+3)%7=(5+0+0+3)%7=8%7=星期一(注意:2100年是平年)其中萬年某日星期算法 其公式為:某日星期幾=(百年%4*5天+年+年/4+月星期表+日+2天)%7(1)int isleapYear(int year)。該函數(shù)判斷某年是否是閏年,參數(shù)year表示要判斷的年份,返回值1表示該年為閏年,0表示該年為平年。int IsLeapYear( int year ){if ((year %4 == 0) amp。amp。 (year % 100 != 0) ||(year % 400 == 0) )return 1。 else return 0。開始流程圖:Year%400 Return 1 Y NYear%100Return 0Year%4 Y N N YReturn 1Return 0 閏年判斷(2)struct tm* getDay();該函數(shù)用以取得系統(tǒng)的時間。該函數(shù)沒有參數(shù),返回值類型為struct tm*,是一個包含時間的結(jié)構(gòu)體struct tm* getDay()//從系統(tǒng)取得當(dāng)前時間{time_t timer。struct tm* gmt。time(amp。timer)。gmt=localtime(amp。timer)。return gmt。}(3)int getwDay(int year,int month,int day);該函數(shù)用以根據(jù)一個日期推斷星期,參數(shù)為要判斷的年月日。返回值為整型,123456分別表示星期一到星期六,0表示星期天。int getwDay(int year,int month,int day)//取得星期{int nday=0,nDay,i,w。for(i=0。imonth1。i++)nday+=daysOfMonth[runYear(year)][i]。nday+=day。nDay=year1+(year1)/4(year1)/100+(year1)/400+nday。w=nDay%7。return w。}(流程圖?。。。┧?、程序源代碼includeincludeincludeincludeinclude define KEYNUMUp 0x48define KEYNUMDown 0x50 define KEYNUMLeft 0x4b define KEYNUMRight 0x4ddefine KEYNUMPageUp 0x49 define KEYNUMPageDown 0x51 int year,month,day。 //全局變量記錄時間int daysOfMonth[2][12]={{31,28,31,30,31,30,31,31,30,31,30,31},{31,29,31,30,31,30,31,31,30,31, 30,31}}。int runYear(int year) //判斷是否是閏年{ int flag=0。 if(year%400==0||(year%4==0amp。amp。year%100!=0)) flag=1。 return flag。}struct tm* getDay()//從系統(tǒng)取得當(dāng)前時間{ time_t timer。 struct tm* gmt。 time(amp。timer)。 gmt=localtime(amp。timer)。 return gmt。}int dayExame(int year,int month,int day)//檢查日期是否正確{ if(year0||month1||month12||day1||day31) return 0。 switch(month) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: if(day31)return 0。break。 case 4: case 6: case 9: case 11: if(day30)return 0。break。 default: if(runYear(year)amp。amp。day29) return 0。 else if(runYear(year)==0amp。amp。day28) return 0。 } return 1。}int getwDay(int year,int month,int day)//取得星期{ int nday=0,nDay,i,w。 for(i=0。imonth1。i++) nday+=daysOfMonth[runYear(year)][i]。 nday+=day。 nDay=year1+(year1)/4(year1)/100+(year1)/400+nday。 w=nDay%7。 return w。}void printCalender(int year,int month,int day)。void setDay(int year,int month,int day)//調(diào)節(jié)日期{ char k。 printf(%c:上一年 %c:下一年\n,24,25)。 printf(%c:上個月 %c:下個月\n,27,26)。 printf(PageUp:昨天 PageDown:明天\n)。 printf(其他:返回主菜單\n)。 getch()。 k=getch()。 switch(k) //通過方向鍵和PageUp、PageDown鍵來調(diào)整日期 { case KEYNUMUp: year。if(dayExame(year,month,day)==0){year++。 printf(%c,7)。} //檢查日期的合法性,//若錯誤,保持日期不變,并警告 system(cls)。printCalender(year,month,day)。setDay(year,month,day)。break。 case KEYNUMDown: year++。 if(dayExame(year,month,day)==0){year。printf(%c,7)。} system(cls)。printCalender(year,month,day)。setDay(year,month,day)。break。 case KEYNUMLeft: month。 if(dayExame(year,month,day)==0){month++。printf(%c,7)。} system(cls)。printCalender(year,month,day)。setDay(year,month,day)。break。 case KEYNUMRight: month++。 if(dayExame(year,month,day)==0){month。printf(%c,7)。} system(cls)。printCalender(year,month,day)。setDay(year,month,day)。break。 case KEYNUMPageUp: day。 if(dayExame(year,month,day)==0){day++。printf(%c,7)。} system(cls)。printCalender(year,month,day)。setDay(year,month,day)。break。 case KEYNUMPageDown: day++。 if(dayExame(year,month,day)==0){day。printf(%c,7)。} system(cls)。printCalender(year,month,day)。setDay(year,month,day)。break。 default: 。 }}void printCalender(int year,int month,int day)//打印月歷{ int i,n。 int w。 int nowDay=1。 char wday[7][4]={Sun,Mon,Tue,Wed,Thu,Fri,Sat}。 printf( %d年%d月%d日\n,year,month,day)。 printf(***********************************\n)。 for(i=0。i7。i++) printf(%5s,wday[i])。 printf(\n)。 w=getwDay(year,month,nowDay)。//找到第一天的星期 n=daysOfMonth[runYear(year)][month1]。 switch(w) //放置第一天 { case 0:printf(%5d,nowDay)。break。 case 1:printf(%10d,nowDay)。break。 case 2:printf(%15d,nowDay)。break。 case 3:printf(%20d,nowDay)。break。 case 4:printf(%25d,nowDay)。break。 case 5:printf(%30d,nowDay)。break。 default:printf(%35d\n,nowDay)。 } nowDay++。 for(i=1。in。i++) { w=getwDay(year,month,nowDay)。 printf(%5d,nowDay)。 if(w==6) //如果是星期六則換行打印 puts(\n)。 nowDay++。 } printf(\n***********************************\n\n)。}void checkCalender()//查詢?nèi)諝v{ int year,month,day。 system(cls)。 printf(請輸入你要查詢的日期(格式為年月日,如2009 11 3):)。 scanf(%d%d%d,amp。year,amp。month,amp。day)。 while(!dayExame(year,month,day)) //如果日期輸入不正確,則重新輸入 { printf(%c你輸入的日期錯誤,請重新輸入:,7)。 scanf(%d%d%d,amp。year,amp。month,amp。day)。 } system(cls)。 if(runYear(year)) printf(\n 閏年\n\n)。 else printf(\n 平年\n\n)。 printCalender(year,month,day)。}void backMenu(){ printf(請按任意字符鍵返回主菜單:)。 getch()。 system(cls)。}void mainMenu(int year,int mon
點擊復(fù)制文檔內(nèi)容
教學(xué)教案相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1