C语言实现的日历
发布时间:2020-12-16 07:48:02 所属栏目:百科 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 #includestdio.h #includestdlib.h #includeconio.h #includestring.h int a[31]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,
以下代码由PHP站长网 52php.cn收集自互联网 现在PHP站长网小编把它分享给大家,仅供参考 #include<stdio.h> #include<stdlib.h> #include<conio.h> #include<string.h> int a[31]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31}; int main() { int Leap(int ); int Month(int ); void print(int k,int t,int day); int i,j=0,k,m,n,t=-6; int day; int total=1; printf("请输入年份:"); scanf("%d",&m); printf("请输入月份:"); scanf("%d",&n); getchar(); do { system("cls"); printf("%d年%d月:n",n); total=365*(m-1); for(i=1;i<m;i++) if(Leap(i)==1) total+=1; for(i=1;i<n;i++) total=total+Month(i); day=Month(n); if(Leap(m)==1 && n==2) day++; if(total>1) total--; if(total==0) k=(total+1)%7; else k=(total+2)%7; print(k,t,day); printf("请选择:"); switch(getch()) { case '>': if(n==12) { m++; n=1; } else n++; break; case '<': if(n==1) { m--; n=12; } else n--; break; case '?': printf("请输入年份:"); scanf("%d",&m); printf("请输入月份:"); scanf("%d",&n); break; case '#': j=1; break; } if(j==1) break; putchar(10); }while(1); return 0; } int Month(int n) { int day; switch(n) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: day=31; break; case 2: day=28; break; case 4: case 6: case 9: case 11: day=30; break; default: printf("您输入的月份有错,请重新输入!n"); } return day; } int Leap(int m) {//闰年返回1,否则返回0。 int i=0; if(m%4==0 && m%100!=0 || m%400==0) i=1; return i; } void print(int k,int day) { FILE *fp; if((fp=fopen("abc.txt","w"))==0) { printf("打开失败n"); exit(1); } int i; printf("n日 一 二 三 四 五 六n"); fprintf(fp,"n日 一 二 三 四 五 六n"); printf("-------------------------------------------------------------n"); fprintf(fp,"---------------------------------------------------------n"); for(i=1;i<=k;i++) { printf(" "); fprintf(fp," "); } for(i=0;i<day;i++) { printf("%-8d",a[i]); fprintf(fp,"%-8d",a[i]); if(k==6) { printf("n"); printf("-------------------------------------------------------------n"); fprintf(fp,"n"); fprintf(fp,"-----------------------------------------------------------n"); t=0; } if(t!=0 && t%7==0) { printf("n"); fprintf(fp,"n"); printf("-------------------------------------------------------------n"); fprintf(fp,"-----------------------------------------------------------n"); } k++; t++; } printf("n--------------------------n"); printf(" 选 项 n"); printf(" > 下一个月 n"); printf(" < 上一个月 n"); printf(" ? 自定义年月 n"); printf(" # 退出 n"); printf("--------------------------n"); fclose(fp); } 以上内容由PHP站长网【52php.cn】收集整理供大家参考研究 如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |