/*加载头文件*/#include #include #include #include #include/*定义常量*//*左移键*/#define LEFT 0x4b00/*右移键*/#define RIGHT 0x4d00/*下移键*/#define DOWN 0x5000/*上移键*/#define UP 0x4800/*向上翻页移键*/#define PAGEUP 0x4900/*向下翻页移键*/#define PAGEDOWN 0x5100/*小写字母q*/#define QLOWER 0x1071/*大写字母Q*/#define QUPPER 0x1051/*空格键*/#define SPACE 0x3920/*Escape键*/#define ESC 0x011b#define N1 64#define N2 32#define N4 16#define N8 8#define N16 4#define END 0enum NOTES{C10=131,D10=147,E10=165,F10=175,G10=196,A10=220,B10=247,C0=262,D0=296,E0=330,F0=349,G0=392,A0=440,B0=494,C1=525,D1=587,E1=659,F1=698,G1=784,A1=880,B1=988,C2=1047,D2=1175,E2=1319,F2=1397,G2=1568,A2=1760,B2=1796}song[]={D0,N4,E0,N8,D0,N8,C0,N4,A10,N4,G10,N8,E10,N8,G10,N8,A10,N8,C0,N2,A10,N4,A10,N8,C0,N8,G10,N8,A0,N8,E0,N8,G0,N8,D0,N2,E0,N4,D0,N8,E0,N8,G0,N4,E0,N4,G10,N8,E10,N8,G10,N8,A10,N8,C0,N2,A10,N4,A10,N8,C0,N8,A10,N8,A10,N8,D10,N8,E10,N8,G10,N2,D0,N4,D0,N4,G0,N4,A0,N8,G0,N8,F0,N2,G0,N2,A0,N4,G0,N8,E0,N8,D0,N8,E0,N8,C0,N8,A10,N8,D0,N2,E0,N4,G0,N8,E0,N8,G0,N4,E0,N4,G10,N8,E10,N8,G10,N8,A10,N8,C0,N4,A10,N4,A10,N8,C0,N8,D0,N8,A10,N8,C0,N8,E0,N8,D0,N1,END,END};/*定义全局变量*/struct date sysTime;int currentYear;int currentMonth;int currentDay;int n_currentMon;int n_lastMon;struct time t;/*-----------自定义函数-------------------------*/ void checkDate();int isLeapyear(int year);int getWeek(int year,int month,int day);int holiday();int isAnimalyear(int year);int istiangandizhiyear(int year);int getjianguonian(int year);int isxingzuo(int month,int day);int isjieqi(int month,int day);void printSpace(int n);void printSeparator();void printSeparator1();void printSeparator2();void printSeparator3();void printUsage();void printWeek();void printWeek2(int week);void showCalendar(int year,int month,int day);void showtime();void getKeyValue();void music();int isAnimalyear(int year){ if ((year-4)%12==0) return 0; if ((year-4)%12==1) return 1; if ((year-4)%12==2) return 2; if ((year-4)%12==3) return 3; if ((year-4)%12==4) return 4; if ((year-4)%12==5) return 5; if ((year-4)%12==6) return 6; if ((year-4)%12==7) return 7; if ((year-4)%12==8) return 8; if ((year-4)%12==9) return 9; if ((year-4)%12==10) return 10; if ((year-4)%12==11) return 11;}int istiangandizhiyear(int year){ if ((year-4)%60==0) return 0; if ((year-4)%60==1) return 1; if ((year-4)%60==2) return 2; if ((year-4)%60==3) return 3; if ((year-4)%60==4) return 4; if ((year-4)%60==5) return 5; if ((year-4)%60==6) return 6; if ((year-4)%60==7) return 7; if ((year-4)%60==8) return 8; if ((year-4)%60==9) return 9; if ((year-4)%60==10) return 10; if ((year-4)%60==11) return 11; if ((year-4)%60==12) return 12; if ((year-4)%60==13) return 13; if ((year-4)%60==14) return 14; if ((year-4)%60==15) return 15; if ((year-4)%60==16) return 16; if ((year-4)%60==17) return 17; if ((year-4)%60==18) return 18; if ((year-4)%60==19) return 19; if ((year-4)%60==20) return 20; if ((year-4)%60==21) return 21; if ((year-4)%60==22) return 22; if ((year-4)%60==23) return 23; if ((year-4)%60==24) return 24; if ((year-4)%60==25) return 25; if ((year-4)%60==26) return 26; if ((year-4)%60==27) return 27; if ((year-4)%60==28) return 28; if ((year-4)%60==29) return 29; if ((year-4)%60==30) return 30; if ((year-4)%60==31) return 31; if ((year-4)%60==32) return 32; if ((year-4)%60==33) return 33; if ((year-4)%60==34) return 34; if ((year-4)%60==35) return 35; if ((year-4)%60==36) return 36; if ((year-4)%60==37) return 37; if ((year-4)%60==38) return 38; if ((year-4)%60==39) return 39; if ((year-4)%60==40) return 40; if ((year-4)%60==41) return 41; if ((year-4)%60==42) return 42; if ((year-4)%60==43) return 43; if ((year-4)%60==44) return 44; if ((year-4)%60==45) return 45; if ((year-4)%60==46) return 46; if ((year-4)%60==47) return 47; if ((year-4)%60==48) return 48; if ((year-4)%60==49) return 49; if ((year-4)%60==50) return 50; if ((year-4)%60==51) return 51; if ((year-4)%60==52) return 52; if ((year-4)%60==53) return 53; if ((year-4)%60==54) return 54; if ((year-4)%60==55) return 55; if ((year-4)%60==56) return 56; if ((year-4)%60==57) return 57; if ((year-4)%60==58) return 58; if ((year-4)%60==59) return 59;}int getjianguonian(int year){ if(year>1949) return (year-1949);}int getWeek(int year,int month,int day){ int leapFlag; int week; int i ; int a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31}; int count=0 ; leapFlag=isLeapyear(year); if(leapFlag==1) a[2]++; for(i=1;i { count+=a[i]; } count+=day; week=(year+1+(year-1)/4+(year-1)/100+(year-1)/400+count)%7 ; return week ;}int isxingzuo(int month,int day) { if (month==1) { if (day>=20&&day<=31) return 1; } if (month==2) { if (day>=1&&day<=18) return 2; } if (month==2) { if (day>=19&&day<=28) return 3; } if (month==3) { if (day>=1&&day<=20) return 4; } if (month==3) { if (day>=21&&day<=31) return 5; } if (month==4) { if (day>=1&&day<=19) return 6; } if (month==4) { if (day>=20&&day<=30) return 7; } if (month==5) { if (day>=1&&day<=20) return 8; } if (month==5) { if (day>=21&&day<=31) return 9;} if (month==6) { if (day>=1&&day<=21) return 10; } if (month==6) { if (day>=22&&day<=30) return 11;} if (month==7) { if (day>=1&&day<=22) return 12; } if (month==7) { if (day>=23&&day<=31) return 13; } if (month==8) { if (day>=1&&day<=22) return 14; } if (month==8) { if (day>=23&&day<=31) return 15; } if (month==9) { if (day>=1&&day<=22) return 16; } if (month==9) { if (day>=23&&day<=30) return 17; } if (month==10) { if (day>=1&&day<=22) return 18; } if (month==10) { if (day>=23&&day<=31) eturn 19; } if (month==11) { if (day>=1&&day<=21) return 20; } if (month==11) { if (day>=22&&day<=30) return 21; } if (month==12) { if (day>=1&&day<=21) return 22; } if (month==12) { if (day>=22&&day<=31) return 23;} if (month==1) { if (day>=1&&day<=19) return 24;}}int isjieqi(int month,int day){ if (month==1&&day==6) return 1; if (month==1&&day==21) return 2; if (month==2&&day==4) return 3; if (month==2&&day==19) return 4; if (month==3&&day==5) return 5; if (month==3&&day==20) return 6; if (month==4&&day==4) return 7; if (month==4&&day==20) return 8; if (month==5&&day==5) return 9; if (month==5&&day==21) return 10; if (month==6&&day==5) return 11; if (month==6&&day==21) return 12; if (month==7&&day==7) return 13; if (month==7&&day==22) return 14; if (month==8&&day==7) return 15; if (month==8&&day==23) return 16; if (month==9&&day==7) return 17; if (month==9&&day==22) return 18; if (month==10&&day==8) return 19; if (month==10&&day==23) return 20; if (month==11&&day==7) return 21; if (month==11&&day==22) return 22; if (month==12&&day==7) return 23; if (month==12&&day==21) return 24;}int holiday(){ if(currentMonth==1&¤tDay==1) { gotoxy(24,4); textcolor(10); cprintf("元旦"); }if(currentMonth==2&¤tDay==14) { gotoxy(24,5); textcolor(10); cprintf("情人节"); }if(currentMonth==3&¤tDay==8) { gotoxy(24,5); textcolor(10); cprintf("国际妇女节"); }if(currentMonth==3&¤tDay==12) { gotoxy(24,5); textcolor(10); cprintf("中国植树节"); }if(currentMonth==3&¤tDay==15) { gotoxy(24,5); textcolor(10); cprintf("世界消费者权益日"); }if(currentMonth==4&¤tDay==1) { gotoxy(24,5); textcolor(10); cprintf("愚人节"); }if(currentMonth==5&¤tDay==1) { gotoxy(24,5); textcolor(10); cprintf("国际劳动节"); }if(currentMonth==5&¤tDay==4) { gotoxy(24,5); textcolor(10); cprintf("中国青年节"); }if(currentMonth==5&¤tDay==12) { gotoxy(24,5);; textcolor(10); cprintf("国际护士节"); }if(currentMonth==6&¤tDay==1) { gotoxy(24,5); textcolor(10); cprintf(" 国际儿童节"); }if(currentMonth==6&¤tDay==5) { gotoxy(24,5);; textcolor(10); cprintf("世界环境日"); }if(currentMonth==7&¤tDay==1) { gotoxy(24,5);; textcolor(10); cprintf("香港回归纪念日"); }if(currentMonth==8&¤tDay==1) { gotoxy(24,5); textcolor(10); cprintf("建军节"); }if(currentMonth==9&¤tDay==10) { gotoxy(24,5); textcolor(10); cprintf("中国教师节"); }if(currentMonth==10&¤tDay==1) { gotoxy(24,5); textcolor(10); cprintf("国庆节"); }if(currentMonth==10&¤tDay==31) { gotoxy(24,5); textcolor(10); cprintf("万圣节"); }if(currentMonth==11&¤tDay==11) { gotoxy(24,5);; textcolor(10); cprintf("光棍节"); }if(currentMonth==12&¤tDay==1) { gotoxy(24,5);; textcolor(10); cprintf("世界预防爱滋病日"); } if(currentMonth==12&¤tDay==3) { gotoxy(24,5);; textcolor(10); cprintf("世界残疾人日"); }if(currentMonth==12&¤tDay==10) { gotoxy(24,5);; textcolor(10); cprintf("世界人权日 "); }if(currentMonth==12&¤tDay==20) { gotoxy(24,5);; textcolor(10); cprintf("澳门回归纪念日"); } if(currentMonth==12&¤tDay==25) { gotoxy(24,5);; textcolor(10); cprintf("圣诞节"); }}void printSeparator1(){ int i ; for(i=0;i<23;i++) { textcolor(9); cprintf("*%"); } printf("\n");}void printSeparator2(){ int i ; for(i=0;i<15;i++) { textcolor(3); cprintf("~*~"); } printf("\n");}void printSeparator3(){ int i ; for(i=0;i<23;i++) { textcolor(1); cprintf("*%"); } printf("\n");}void printUsage(){ gotoxy(47,1); textcolor(12); cprintf("clear up time is equal to showtime"); gotoxy(48,2); textcolor(14); cprintf("@*%@*%@*%@*%@*%@*%@*%@*%@*%@*%@*%"); gotoxy(48,3); textcolor(14); cprintf("@*% $+++++++++++"); gotoxy(64,3); textcolor(12); cprintf("Usage"); gotoxy(69,3); textcolor(14); cprintf("++++++++++++"); gotoxy(48,4); textcolor(14); cprintf("@*% $ ++"); gotoxy(48,5); textcolor(14); cprintf("@*% $"); gotoxy(53,5); textcolor(13); cprintf(" YEAR:"); gotoxy(59,5); textcolor(11); cprintf(" Up ( ) 加年份 "); gotoxy(79,5); textcolor(14); cprintf("++\n"); gotoxy(48,6); textcolor(14); cprintf("@*% $ ++"); gotoxy(48,7); textcolor(14); cprintf("@*% $"); gotoxy(53,7); textcolor(11); cprintf(" Down ( ) 减年份"); gotoxy(79,7); textcolor(14); cprintf("++\n"); gotoxy(48,8); textcolor(14); cprintf("@*% $ ++"); gotoxy(48,9); textcolor(14); cprintf("@*% $"); gotoxy(53,9); textcolor(13); cprintf(" MONTH:"); gotoxy(60,9); textcolor(11); cprintf(" Right ( ) 加月份 "); gotoxy(79,9); textcolor(14); cprintf("++\n"); gotoxy(48,10); textcolor(14); cprintf("@*% $ ++"); gotoxy(48,11); textcolor(14); cprintf("@*% $"); gotoxy(53,11); textcolor(11); cprintf(" Left ( ) 减月份"); gotoxy(79,11); textcolor(14); cprintf("++\n"); gotoxy(48,12); textcolor(14); cprintf("@*% $ ++"); gotoxy(48,13); textcolor(14); cprintf("@*% $"); gotoxy(53,13); textcolor(13); cprintf(" DAY:"); gotoxy(59,13); textcolor(11); cprintf(" PageDown 加天数 "); gotoxy(79,13); textcolor(14); cprintf("++\n"); gotoxy(48,14); textcolor(14); cprintf("@*% $ ++"); gotoxy(48,15); textcolor(14); cprintf("@*% $"); gotoxy(53,15); textcolor(11); cprintf(" PageUp 减天数 "); gotoxy(79,15); textcolor(14); cprintf("++\n"); gotoxy(48,16); textcolor(14); cprintf("@*% $"); gotoxy(53,16); textcolor(13); cprintf(" QUERY:"); gotoxy(60,16); textcolor(11); cprintf(" Q/q 查询 "); gotoxy(79,16); textcolor(14); cprintf("++\n"); gotoxy(48,17); textcolor(14); cprintf("@*% $ ++"); gotoxy(48,18); textcolor(14); cprintf("@*% $"); textcolor(13); gotoxy(53,18); cprintf(" RESET:"); gotoxy(60,18); textcolor(11); cprintf(" SPACE 重置系统日期"); gotoxy(79,18); textcolor(14); cprintf("++\n"); gotoxy(48,19); textcolor(14); cprintf("@*% $ ++"); gotoxy(48,20); textcolor(14); cprintf("@*% $"); gotoxy(53,20); textcolor(13); cprintf(" F1:"); gotoxy(59,20); textcolor(11); cprintf(" Showtime 显示时间 "); gotoxy(79,20); textcolor(14); cprintf("++\n"); gotoxy(48,21); textcolor(14); cprintf("@*% $"); gotoxy(53,21); textcolor(13); cprintf(" EXIT:"); gotoxy(59,21); textcolor(11); cprintf(" Esc 退出 "); gotoxy(79,21); textcolor(14); cprintf("++\n"); gotoxy(48,22); textcolor(14); cprintf("@*% $++++++++++++++++++++++++++++"); gotoxy(48,23); textcolor(14); cprintf("@*%@*%@*%@*%@*%@*%@*%@*%@*%@*%@*%"); gotoxy(47,24); textcolor(12); cprintf("* exit showtime before you quary.*"); gotoxy(65,5) _CX=01; _AH=0xa; _AL=24; geninterrupt(0x10); gotoxy(67,7); _CX=01; _AH=0xa; _AL=25; geninterrupt(0x10); gotoxy(68,9); _CX=01; _AH=0xa; _AL=26; geninterrupt(0x10); gotoxy(67,11); _CX=01; _AH=0xa; _AL=27; geninterrupt(0x10); textcolor(7);}void showCalendar(int year,int month,int day){ int i; int j; int outDay; int leapFlag; int animalFlap; int tiangandizhiFlag; int xingzuoFlag; int jieqiFlag; int dayLastMon; int week; int a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31}; outDay=0; dayLastMon=0; week=0; leapFlag=isLeapyear(year); if(leapFlag==1) { a[2]++; } animalFlap=isAnimalyear(year); tiangandizhiFlag=istiangandizhiyear(year); xingzuoFlag=isxingzuo(month,day); jieqiFlag=isjieqi(month,day); if(day>a[month]) { printf("The number of this month's day is %d at most !\n",a[month]); printf("Press any key to continue......\n"); getchar(); getchar(); year=sysTime.da_year; month=sysTime.da_mon; day=sysTime.da_day ; currentYear=sysTime.da_year; currentMonth=sysTime.da_mon; currentDay=sysTime.da_day ; } n_currentMon=a[month]; n_lastMon=a[month-1]; week=dayLastMon=getWeek(year,month,1); clrscr(); textcolor(12); printf("%d年",year); textcolor(11); if(leapFlag==1) cprintf(" /闰",year); if(leapFlag==0) cprintf(" /平",year); textcolor(10); if(animalFlap==0) cprintf(" 【鼠】",year); if(animalFlap==1) cprintf(" 【牛】",year); if(animalFlap==2) cprintf(" 【虎】",year); if(animalFlap==3) cprintf(" 【兔】",year); if(animalFlap==4) cprintf(" 【龙】",year); if(animalFlap==5) cprintf(" 【蛇】",year); if(animalFlap==6) cprintf(" 【马】",year); if(animalFlap==7) cprintf(" 【羊】",year); if(animalFlap==8) cprintf(" 【猴】",year); if(animalFlap==9) cprintf(" 【鸡】",year); if(animalFlap==10) cprintf(" 【狗】",year); if(animalFlap==11) cprintf(" 【猪】",year); textcolor(14); if(tiangandizhiFlag==0) cprintf(" 甲子年",year); if(tiangandizhiFlag==1) cprintf(" 乙丑年",year); if(tiangandizhiFlag==2) cprintf(" 丙寅年",year); if(tiangandizhiFlag==3) cprintf(" 丁卯年",year); if(tiangandizhiFlag==4) cprintf(" 戊辰年",year); if(tiangandizhiFlag==5) cprintf(" 己巳年",year); if(tiangandizhiFlag==6) cprintf(" 庚午年",year); if(tiangandizhiFlag==7) cprintf(" 辛未年",year); if(tiangandizhiFlag==8) cprintf(" 壬申年",year); if(tiangandizhiFlag==9) cprintf(" 癸酉年",year); if(tiangandizhiFlag==10) cprintf(" 甲戌年",year); if(tiangandizhiFlag==11) cprintf(" 乙亥年",year); if(tiangandizhiFlag==12) cprintf(" 丙子年",year); if(tiangandizhiFlag==13) cprintf(" 丁丑年",year); if(tiangandizhiFlag==14) cprintf(" 戊寅年",year); if(tiangandizhiFlag==15) cprintf(" 己卯年",year); if(tiangandizhiFlag==16) cprintf(" 庚辰年",year); if(tiangandizhiFlag==17) cprintf(" 辛巳年",year); if(tiangandizhiFlag==18) cprintf(" 壬午年",year); if(tiangandizhiFlag==19) cprintf(" 癸未年",year); if(tiangandizhiFlag==20) cprintf(" 甲申年",year); if(tiangandizhiFlag==21) cprintf(" 乙酉年",year); if(tiangandizhiFlag==22) cprintf(" 丙戌年",year); if(tiangandizhiFlag==23) cprintf(" 丁亥年",year); if(tiangandizhiFlag==24) cprintf(" 戊子年",year); if(tiangandizhiFlag==25) cprintf(" 己丑年",year); if(tiangandizhiFlag==26) cprintf(" 庚寅年",year); if(tiangandizhiFlag==27) cprintf(" 辛卯年",year); if(tiangandizhiFlag==28) cprintf(" 壬辰年",year); if(tiangandizhiFlag==29) cprintf(" 癸巳年",year); if(tiangandizhiFlag==30) cprintf(" 甲午年",year); if(tiangandizhiFlag==31) cprintf(" 乙未年",year); if(tiangandizhiFlag==32) cprintf(" 丙申年",year); if(tiangandizhiFlag==33) cprintf(" 丁酉年",year); if(tiangandizhiFlag==34) cprintf(" 戊戌年",year); if(tiangandizhiFlag==35) cprintf(" 己亥年",year); if(tiangandizhiFlag==36) cprintf(" 庚子年",year); if(tiangandizhiFlag==37) cprintf(" 辛丑年",year); if(tiangandizhiFlag==38) cprintf(" 壬寅年",year); if(tiangandizhiFlag==39) cprintf(" 癸丑年",year); if(tiangandizhiFlag==40) cprintf(" 甲辰年",year); if(tiangandizhiFlag==41) cprintf(" 乙巳年",year); if(tiangandizhiFlag==42) cprintf(" 丙午年",year); if(tiangandizhiFlag==43) cprintf(" 丁未年",year); if(tiangandizhiFlag==44) cprintf(" 戊申年",year); if(tiangandizhiFlag==45) cprintf(" 己酉年",year); if(tiangandizhiFlag==46) cprintf(" 庚戌年",year); if(tiangandizhiFlag==47) cprintf(" 辛亥年",year); if(tiangandizhiFlag==48) cprintf(" 壬子年",year); if(tiangandizhiFlag==49) cprintf(" 癸丑年",year); if(tiangandizhiFlag==50) cprintf(" 甲寅年",year); if(tiangandizhiFlag==51) cprintf(" 乙卯年",year); if(tiangandizhiFlag==52) cprintf(" 丙辰年",year); if(tiangandizhiFlag==53) cprintf(" 丁巳年",year); if(tiangandizhiFlag==54) cprintf(" 戊午年",year); if(tiangandizhiFlag==55) cprintf(" 己未年",year); if(tiangandizhiFlag==56) cprintf(" 庚申年",year); if(tiangandizhiFlag==57) cprintf(" 辛酉年",year); if(tiangandizhiFlag==58) cprintf(" 壬戌年",year); if(tiangandizhiFlag==59) cprintf(" 癸亥年",year); textcolor(12); cprintf(" 建国[%d]年",getjianguonian(year)); printf("\n"); textcolor(9); printSeparator1(); textcolor(YELLOW); switch(month) { case 1 : cprintf("January 1"); break ; case 2 : cprintf("February 2 "); break ; case 3 : cprintf("March 3 "); break ; case 4 : cprintf("April 4 "); break ; case 5 : cprintf("May 5 "); break ; case 6 : cprintf("June 6 "); break ; case 7 : cprintf("July 7 "); break ; case 8 : cprintf("August 8 "); break ; case 9 : cprintf("September 9 "); break ; case 10 : cprintf("October 10 "); break ; case 11 : cprintf("Nevember 11 "); break ; case 12 : cprintf("December 12"); break ; } textcolor(12); if (xingzuoFlag==1||xingzuoFlag==2) cprintf(" 【水瓶座】"); if (xingzuoFlag==3||xingzuoFlag==4) cprintf(" 【双鱼座】"); if (xingzuoFlag==5||xingzuoFlag==6) cprintf(" 【白羊座】"); if (xingzuoFlag==7||xingzuoFlag==8) cprintf(" 【金牛座】"); if (xingzuoFlag==9||xingzuoFlag==10) cprintf(" 【双子座】"); if (xingzuoFlag==11||xingzuoFlag==12) cprintf(" 【巨蟹座】"); if (xingzuoFlag==13||xingzuoFlag==14) cprintf(" 【狮子座】"); if (xingzuoFlag==15||xingzuoFlag==16) cprintf(" 【处女座】"); if (xingzuoFlag==17||xingzuoFlag==18) cprintf(" 【天秤座】"); if (xingzuoFlag==19||xingzuoFlag==20) cprintf(" 【天蝎座】"); if (xingzuoFlag==21||xingzuoFlag==22) cprintf(" 【射手座】"); if (xingzuoFlag==23||xingzuoFlag==24) cprintf(" 【魔蝎座】"); textcolor(11); if (jieqiFlag==1) cprintf(" 小寒"); if (jieqiFlag==2) cprintf(" 大寒"); if (jieqiFlag==3) cprintf(" 立春"); if (jieqiFlag==4) cprintf(" 雨水"); if (jieqiFlag==5) cprintf(" 惊蛰"); if (jieqiFlag==6) cprintf(" 春分"); if (jieqiFlag==7) cprintf(" 清明"); if (jieqiFlag==8) cprintf(" 谷雨"); if (jieqiFlag==9) cprintf(" 立夏"); if (jieqiFlag==10) cprintf(" 小满"); if (jieqiFlag==11) cprintf(" 芒种"); if (jieqiFlag==12) cprintf(" 夏至"); if (jieqiFlag==13) cprintf(" 小暑"); if (jieqiFlag==14) cprintf(" 大暑"); if (jieqiFlag==15) cprintf(" 立秋"); if (jieqiFlag==16) cprintf(" 处暑"); if (jieqiFlag==17) cprintf(" 白露"); if (jieqiFlag==18) cprintf(" 秋分"); if (jieqiFlag==19) cprintf(" 寒露"); if (jieqiFlag==20) cprintf(" 霜降"); if (jieqiFlag==21) cprintf(" 立冬"); if (jieqiFlag==22) cprintf(" 小雪"); if (jieqiFlag==23) cprintf(" 大雪"); if (jieqiFlag==24) cprintf(" 冬至"); textcolor(7); printf("\n"); holiday(); printf("\n"); textcolor(13); cprintf(" Sun Mon Tue Wed Thu Fri Sat"); textcolor(7); printf("\n"); printSeparator3(); for(i=0;i<6;i++) { if(i==0) { printSpace(dayLastMon*6); for(j=0;j<7-dayLastMon;j++) { textcolor(7); if(outDay==day-1) { textcolor(YELLOW); cprintf(" [%d]",++outDay); textcolor(12); } else if(outDay==day && week!=0) { textcolor(12); cprintf(" |"); printf("%2d",++outDay); textcolor(12); cprintf("|"); } else { textcolor(12); cprintf(" |"); printf("%2d",++outDay); textcolor(12); cprintf("|"); } week=(week<6)?week+1:0; } printf("\n"); printSeparator3(); } else { for(j=0;j<7;j++) { if(outDay { if(outDay==day-1) { if(outDay<9) { textcolor(YELLOW); cprintf(" [%d]",++outDay); textcolor(7); } else { textcolor(YELLOW); cprintf(" [%2d] ",++outDay); textcolor(7); } } else if(outDay==day && week!=0) { textcolor(12); cprintf(" |"); printf("%2d",++outDay); textcolor(12); cprintf("|"); } else { textcolor(12); cprintf(" |"); printf("%2d",++outDay); textcolor(12); cprintf("|"); } } week=(week<6)?week+1:0; } printf("\n"); printSeparator3(); if(outDay==a[month])break ; } } printSeparator2(); gotoxy(1,18); printSeparator1(); gotoxy(1,19); printSeparator2(); gotoxy(1,20); textcolor(6); cprintf("The day you choose is : "); textcolor(12); printWeek(); gotoxy(1,21); textcolor(5); cprintf("----------------------"); gotoxy(23,21); textcolor(15); cprintf(" *********************\n"); gotoxy(1,22); textcolor(15); cprintf("Today is :"); gotoxy(12,22); if (month==1) textcolor(10); if (month==2) textcolor(11); if (month==3) textcolor(13); if (month==4) textcolor(10); if (month==5) textcolor(11); if (month==6) textcolor(13); if (month==7) textcolor(10); if (month==8) textcolor(11); if (month==9) textcolor(13); if (month==10) textcolor(10); if (month==11) textcolor(11); if (month==12) textcolor(13); cprintf("%d-%d-%d",sysTime.da_year,sysTime.da_mon,sysTime.da_day); printWeek2(getWeek(sysTime.da_year,sysTime.da_mon,sysTime.da_day)); printUsage(); gotoxy(1,25); if (month==1) textcolor(10); if (month==2) textcolor(11); if (month==3) textcolor(6); if (month==4) textcolor(13); if (month==5) textcolor(15); if (month==6) textcolor(8); if (month==7) textcolor(9); if (month==8) textcolor(10); if (month==9) textcolor(11); if (month==10) textcolor(6); if (month==11) textcolor(13); if (month==12) textcolor(15); music();}}void music(){int note=0,fre,dur,control; clock_t goal;while(song[note]!=0) { fre=song[note]; dur=song[note+1]; if(kbhit()) break; if(fre){ outportb(0x43,0xb6); fre=(unsigned)(1193180L/fre); outportb(0x42,(char)fre); outportb(0x42,(char)(fre>>8)); control=inportb(0x61); outportb(0x61,(control)|0x3);}goal=(clock_t)dur+clock( ); while(goal>clock ( )); if(fre) outportb(0x61,control); goal=(clock_t)0;note=note+2;}}void getKeyValue(){int key;char ch;currenYear=systime.da_year;currenMonth=systime.da_mon;currenDay =systime.da_day;}showCalendar(currenYear, currenMonth, currenDay);music();while(1){ key=bioskey(0);if(key==RIGHT){if(currenMon<12&& currenMon>=1){currenMonth++;}else{ currenYear++ ; currenMonth=1;} }if(key==LEFT){ if(currenMon<=12&& currenMon>1){ currenMonth++;}else{ currenYear-- ;currenMonth=12; }}if(key==UP){ currenYear++ ;}if(key==DOWN){ currenYear-- ;}if(key==PAGEUP){ if(currenDay!=1){ currenDay--; }else if(currenDay==1&& currenMon==1){ currenYear--;currenMonth=12;currenDay=31;}else{currenMon--;currenDay =n_lasrMon; }if(key==PAGEDOWN){if(n_ currenMon!= currenDay){currenDay++; }else if(n_ currenMonth== currenDay&& currenMonth==12){ currenYear++ ; currenMonth =1;currenDay=1; } else{ currenMonth++ ;currenDay=1; }}if(key==QLOWER︱︱key==QUPPER){ { printf(“Input date(eg,%d-%d-%d):”, systime.da.day; systime.da_mon ,systime.da_year)scanf(“%d-%d-%d)”,¤Year,¤Month,¤Day );checkDate();}}if(key==SPACE){currenYear=systime.da_year;currenMonth=systime.da_mon;currenDay =systime.da_day;}if(key==ESC){ printf(“Do you really want to quit?(Y/N)”);ch=getchar();if(ch==‘y’ ︱︱ch==‘Y’)break;}if(key==0x3b00)showtime();showCalendar(currenYear, currenMon, currenDay);}}void showtime(){ struct time curtime;float th_hour,th_min,th_sec;do{gettime(&curtime); if((float)curtime.ti_hour<10) printf(""); gotoxy(15,3);textcolor(14); printf("%0.0f:",(float)curtime.ti_hour); if((float)curtime.ti_min<10) printf("0"); gotoxy(18,3);textcolor(14); printf("%0.0f:",(float)curtime.ti_min); if((float)curtime.ti_sec<10) printf("0"); printf("%0.0f",(float)curtime.ti_sec); gotoxy(23,3);textcolor(14); sleep(1); getch(); break ;}while(1);}6.主函数void main()clrscr();_AL=03;_AH=0;geninterrupt(0x10)getdate(&systime);getKeyValue();
c,c++,c#,图形日历设计,课程论文
3995
来源:
Licence:
联系:
分类:
平台:
环境:
大小:
更新:
标签:
免费下载
×
温馨提示
请用电脑打开本网页,即可以免费获取你想要的了。