C语言实现的万年历
发布时间:2020-12-16 07:45:52 所属栏目:百科 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 #includestdio.h#includeconio.hstatic char *months[]={"January","February","March","April","May","June","July","August","September","October"
以下代码由PHP站长网 52php.cn收集自互联网 现在PHP站长网小编把它分享给大家,仅供参考 #include<stdio.h> #include<conio.h> static char *months[]={"January","February","March","April","May","June","July","August","September","October","November","December"}; void main() { static int days[12]={31,28,31,30,31}; long int ndays,ldays,tydays,tdays; int d,i,m,fday,y; char ch; textcolor(LIGHTGREEN); textbackground(LIGHTBLUE); clrscr(); printf("Enter year(1900 onwards) & month(number):"); scanf("%d%d",&y,&m); while(1) { ndays=(y-1)*365l; ldays=(y-1)/4-(y-1)/100+(y-1)/400; tdays=ndays+ldays;//total days //check for leap year if((y%100==0 && y%400==0)||(y%4==0 && y%100!=0)) days[1]=29; else days[1]=28; d=days[m-1]; tydays=0; for(i=0;i<=m-2;i++) tydays=tydays+days[i]; tdays=tydays+tdays; fday=tdays%7; cal(y,d); ch=getche(); switch(ch) { case 77: if(m==12) { y++; m=1; } else m++; break; case 72: y++; continue; case 75: if(m==1) { y--; m=12; } else m--; break; case 80: y--; continue; case 27: exit(0); }}} cal(int yr,int mo,int fd,int da) { int i,r,c; char a; clrscr(); gotoxy(25,2); printf("%s %d",months[mo-1],yr); textcolor(LIGHTGREEN); gotoxy(5,5); printf("____________________________________________________"); gotoxy(10,6); printf("MON TUE WED THU FRI SAT SUN"); gotoxy(5,7); printf("____________________________________________________"); r=9; c=11+(6*fd); for(i=1;i<=da;i++) { gotoxy(c,r); if(c==47) textcolor(RED); else textcolor(LIGHTGREEN); cprintf("%d",i); if(c<=41) c=c+6; else { c=11; r=r+1; } } textcolor(LIGHTGREEN); gotoxy(5,15); printf("____________________________________________________"); gotoxy(11,17); printf("UP-Next Year DOWN-Prev Year"); gotoxy(11,18); printf("RIGHT-Next Month LEFT-Prev Month"); gotoxy(27,20); printf("Esc-Exit"); return 0; } 以上内容由PHP站长网【52php.cn】收集整理供大家参考研究 如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |