• 寒窗轩-谢燕伟的博客

  • 关注互联网事,学习网络编程,秀计算机系统,书写心情故事。
  • 首页
  • 碎语
  • 留言
  • 关于
  • 列表
  • 登录
  • C语言写的一个万年历

    [计算机]
    作者 寒川 / 2006-9-23 17:33 Saturday

    #include<string.h>
    #include<bios.h>
    #include<stdlib.h>
    #include<conio.h>
    #define LEFT 0x4b00
    #define RIGHT 0x4d00
    #define ESC 0x011b
    #define ENTER 0x1c0d
    char *a[4]={"left","right","up","down"};
    int num=3000,key,year=2006;
    int i,j,first=3,w=30;
    char *month[12]={"Junuary","February","March","April","May","June","July","August","September","October","November","December"};
    int mon[12]={31,28,31,30,31,30,31,31,30,31,30,31};
    int fd[12]={0};

    int getkey()
    {char lowbyte;
     int press;
     while(bioskey(1)==0)
        press=bioskey(0);
     lowbyte=press&0xff;
     press=press&0xff00+toupper(lowbyte);
     return(press);
    }

    void sch()
    {window(22,24,30,24);
     textbackground(GREEN);
     clrscr();
     textcolor(15);
     cprintf("\n Search");}


    void sch_0()
    {window(22,24,30,24);
     textbackground(GREEN);
     clrscr();
     textcolor(128);
     cprintf("\n Search ");}


     void backk()

     {window(33,24,42,24);
     textbackground(GREEN);
     clrscr();
     textcolor(15);
     cprintf("\n Month1-4");}


     void backk_0()
     {window(33,24,42,24);
     textbackground(GREEN);
     clrscr();
     textcolor(128);
     cprintf("\n Month1-4");}


    void left()
    {
     window(45,24,54,24);
     textbackground(GREEN);
     clrscr();
     textcolor(15);
     cprintf("\n Month5-8");}


     void left_0()
    {
     window(45,24,54,24);
     textbackground(GREEN);
     clrscr();
     textcolor(128);
     cprintf("\n Month5-8");}


    void right()
    {window(57,24,67,24);
     textbackground(GREEN);
     clrscr();
     textcolor(15);
     cprintf("\n Month9-12");}


    void right_0()
    {window(57,24,67,24);
     textbackground(GREEN);
     clrscr();
     textcolor(128);
     cprintf("\n Month9-12");}

     

     

     

    void iexit()
    {window(70,24,77,24);
     textbackground(GREEN);
     clrscr();
     textcolor(15);
     cprintf("\n  Exit");}


    void iexit_0()
    {window(70,24,77,24);
     textbackground(GREEN);
     clrscr();
     textcolor(128);
     cprintf("\n  Exit");}

     

     


    void jiance(int n)
    {switch(n)
       {case 0:sch_0();left();right();iexit();backk();break;
        case 1:backk_0();left();right();iexit();sch();break;
        case 2:left_0();right();iexit();sch();backk();break;
        case 3:right_0();left();iexit();sch();backk();break;
        case 4:iexit_0();left();right();sch();backk();break;
        default:exit(0);
        }

    }


    void quzhi()
    {window(8,24,20,24);
     textbackground(15);
     clrscr();
     textcolor(RED);
     cscanf("%d",&year);
    }

     

     

     void month1_4()
     {
    for(i=0;i<2;i++)
        {window(2+i*w,3,29+w*i,11);
         textbackground(5);
         clrscr();
         textcolor(GREEN);
         cprintf("            %s\n",month[i]);
         gotoxy(1,2);cprintf(" Mon Tue Wed Thu Fri Sat Sun");
         gotoxy(4*(fd[i]-1)+1,3);
         for(j=1;j<=mon[i];j++)
        {cprintf("%3d ",j);
         /*if((first+j-1)%7==0)putchar('\n');*/
         }
         /*first=(first+mon[i])%7;
         if(first==0)first=7;*/
         }
     for(i=2;i<4;i++)
        {window(2+(i-2)*w,13,29+w*(i-2),21);
         textbackground(5);
         clrscr();
         textcolor(GREEN);
         cprintf("            %s\n",month[i]);
         gotoxy(1,2);cprintf(" Mon Tue Wed Thu Fri Sat Sun");
         gotoxy(4*(fd[i]-1)+1,3);
    for(j=1;j<=mon[i];j++)
        {cprintf("%3d ",j);
         /*if((first+j-1)%7==0)putchar('\n');*/
         }
         /*first=(first+mon[i])%7;
         if(first==0)first=7;*/
    }
    }

     


       void month5_8()
     {for(i=0;i<2;i++)
        {window(2+i*w,3,29+w*i,11);
         textbackground(5);
         clrscr();
         textcolor(GREEN);
         cprintf("            %s\n",month[i+4]);
         gotoxy(1,2);cprintf(" Mon Tue Wed Thu Fri Sat Sun");
         gotoxy(4*(fd[i+4]-1)+1,3);
         for(j=1;j<=mon[i+4];j++)
        {cprintf("%3d ",j);
         /*if((first+j-1)%7==0)putchar('\n');*/
         }
         /*first=(first+mon[i+4])%7;
         if(first==0)first=7;*/
    }
     for(i=2;i<4;i++)
        {window(2+(i-2)*w,13,29+w*(i-2),21);
         textbackground(5);
         clrscr();
         textcolor(GREEN);
         cprintf("           %s",month[i+4]);
         gotoxy(1,2);cprintf(" Mon Tue Wed Thu Fri Sat Sun");
         gotoxy(4*(fd[i+4]-1)+1,3);
         for(j=1;j<=mon[i+4];j++)
        {cprintf("%3d ",j);
         /*if((first+j-1)%7==0)putchar('\n');*/
         }
         /*first=(first+mon[i+4])%7;
         if(first==0)first=7;*/
    }
    }


    void month9_12()
    {for(i=0;i<2;i++)
        {window(2+i*w,3,29+w*i,11);
         textbackground(5);
         clrscr();
         textcolor(GREEN);
         cprintf("            %s\n",month[i+8]);
         gotoxy(1,2);cprintf(" Mon Tue Wed Thu Fri Sat Sun");
         gotoxy(4*(fd[i+8]-1)+1,3);
         for(j=1;j<=mon[i+8];j++)
        {cprintf("%3d ",j);
         /*if((first+j-1)%7==0)putchar('\n');*/
         }
         /*first=(first+mon[i+8])%7;
         if(first==0)first=7;*/
    }
     for(i=2;i<4;i++)
        {window(2+(i-2)*w,13,29+w*(i-2),21);
         textbackground(5);
         clrscr();
         textcolor(GREEN);
         cprintf("            %s",month[i+8]);
         gotoxy(1,2);cprintf(" Mon Tue Wed Thu Fri Sat Sun");
         gotoxy(4*(fd[i+8]-1)+1,3);
         for(j=1;j<=mon[i+8];j++)
        {cprintf("%3d ",j);
         /*if((first+j-1)%7==0)putchar('\n');*/
         }
         /*first=(first+mon[i+8])%7;
         if(first==0)first=7;*/
    }
    }

     


    void calendar(int year)
    {int x,cha;
     long day=0;
     window(1,2,80,22);
     textbackground(YELLOW);
     clrscr();
     if(year<2007)
         {for(x=year;x<2007;x++)
       {if((x%4==0&&x%100!=0)||x%400==0)
        day+=366;
        else day+=365;}
           cha=day%7;
           first=(7+1-cha)%7;
           if(first==0)first=7;
           }
     if(year==2007)first=1;
     if(year>2007)
         {for(x=2007;x<year;x++)
      {if((x%4==0&&x%100!=0)||x%400==0)
        day+=366;
        else day+=365;}
           cha=day%7;
           first=(1+cha)%7;
           if(first==0)first=7;
         }
     if((year%4==0&&year%100!=0)||year%400==0)
       mon[1]=29;
     else mon[1]=28;
     fd[0]=first;
     for(j=1;j<12;j++)
        {fd[j]=(fd[j-1]+mon[j-1])%7;
         if(fd[j]==0)fd[j]=7;}
     month1_4();}

     


    void jiance2(int n)
    {void nian(int year);
     switch(n)
        {case 0:getch( );quzhi();calendar(year);nian(year);break;
         case 1:month1_4();break;
         case 2:month5_8();break;
         case 3:month9_12();break;
         case 4:exit(0);break;
         default:exit(0);}
    }

     

    void ping()
    {clrscr();
     window(1,1,80,1);
     textbackground(RED);
    clrscr();
     gotoxy(6,1);
     textcolor(GREEN);
     cprintf("FILE   Record   Link    Help");
     window(2,1,4,1);
     textbackground(0);
     clrscr();
     window(1,2,80,22);
     textbackground(YELLOW);
     clrscr();
     window(1,23,80,25);
     textbackground(BLUE);
     clrscr();
     window(8,24,20,24);
     textbackground(15);
     clrscr();
     sch_0();
     left();
     right();
     iexit();
     backk();
     calendar(2006);
    }

     

    void copyright()
    {clrscr();
     window(15,5,65,15);
     textbackground(RED);
     clrscr();
     textcolor(GREEN);
     cprintf("\n                  Calendar\n");
     gotoxy(1,4);
     cprintf("         My QQ: 331349451 Tel:08135507131\n");
     gotoxy(1,6);
     cprintf("               >September 19th,2006");
     gotoxy(1,8);
     cprintf("      Sichuan University of Scienc and Engineering  ");
     gotoxy(1,10);
     cprintf("             Jingxi Class 2,Grade 2004");
    }


    void nian(int year)
    {window(62,5,78,5);
     textbackground(RED);
     clrscr();
     textcolor(GREEN);
     cprintf("\n    Calendar");
     window(64,7,75,11);
     textbackground(15);
     clrscr();
     textcolor(1);
     cprintf("\n    Year");
     gotoxy(3,4);
     cprintf("%6d",year);
     window(62,13,78,20);
     textbackground(8);
     clrscr();
     textcolor(9);
     cprintf("\n  Copyright(c)");
     gotoxy(1,4);
     cprintf(" Xieyan Wei");
     gotoxy(1,6);
     cprintf(" xieyanwei1985@163.com");
     return;
     }

     


    main()
    {clrscr();
     window(1,1,80,1);
     textbackground(RED);
     clrscr();
     gotoxy(6,1);
     textcolor(GREEN);
     cprintf("FILE   Record   Link    Help");
     window(2,1,4,1);
     textbackground(0);
     clrscr();
     window(1,2,80,22);
     textbackground(YELLOW);
     clrscr();
     window(1,23,80,25);
     textbackground(BLUE);
     clrscr();
     window(8,24,20,24);
     textbackground(15);
     clrscr();
     copyright();
     sch_0();
     backk();
     left();
     right();
     iexit();
     getch();
     ping();
     calendar(2006);
     nian(2006);
     while(key!=28)
        {if(bioskey(1))key=bioskey(0);
         switch(key)
    {case LEFT:num--;jiance(num%5);key=0;break;
     case RIGHT:num++;jiance(num%5);key=0;break;
     case ENTER:jiance2(num%5);key=0;break;
     case ESC:exit(0);
     default:key=0;break;}
         }

    }
     

    标签: 编程 C

    您可能还喜欢(Maybe You Would Like):

    计算php代码执行时间

    php防止快速刷新的方法

    php判断远程文件是否存在

    css使pre自动换行

    session实现两个页面处理由一个form提交的数据

    « 一个24点的C程序 | 二级是狗屎»

    引用地址:

    发表评论:

    未显示?请点击刷新

  • 博客主

      blogger
    • 寒川
    • 很懒的一个家伙。。。。
  • 搜寻

  • 日志分类

    • 网页编程(56) 订阅该分类
    • 计算机(25) 订阅该分类
    • 幽默笑话(1) 订阅该分类
    • 互联网事(26) 订阅该分类
    • 点滴心情(64) 订阅该分类
    • 精选软件(5) 订阅该分类
  • 最近日志

    • 伤心的虚拟主机
    • 夏普sharp ar-2918 显示小人和小太阳灯一直亮清除方法
    • 周未平乐古镇一日游
    • 如何用正则表达式匹配指定字符开始和指定字符结束
    • excel表格中页码从第n页开始
    • JPG、RAR合并器,可将rar转为jpg。
    • php zend加密破解软件
    • PHP版OAuth认证协议中的HMACSHA1加密算法(签名方法)
    • OAuth认证协议原理分析及使用方法(转)
    • php curl利用嘀咕、搜狐微博API发布微博
    • php curl写个新浪发sina微博的API接口
    • Qzone日志插件发布了
    • 这只是一个测试日志
    • 准备用心做个网站
    • php过滤html标签
  • 随机日志

    • 如何清除IE浏览器输入框记录
    • 说说银行收取点钞费
    • 医生写的字为啥还是那么难认?
    • 突然没了电话会咋样?
    • PHP版OAuth认证协议中的HMACSHA1加密算法(签名方法)
    • 两天整了份简报。。。。
    • 聚聚散散
    • html 5学习-video标签插入视频
    • MeeGo系统手机横空出世了。。。
    • php过滤html标签
    • sql随机排序
    • 用ASP+XML编写留言本
    • asp通用安全字符串输入替换server.htmlencode
    • 终于下雨了
    • Opera测试wap测试日志
  • 最新评论

    • ugg boots
      怎么样啊,看楼...
    • ugg uk
      博主很厉害呀,...
    • ugg boot
      怎么样啊?
    • 中华E商网
      .          \...
    • 小灰
      同情 中国垃圾i...
    • 天籁De路过之
      一不小心又来看...
    • timberland boots
      看来我还不够成...
    • timberland boots
      风景很不错啊.....
    • timberland boots
      呵呵呵 学到一个...
    • ugg boots uk
      进来看看,又学...
  • 日志档案

    • 2010年9月(2)
    • 2010年8月(8)
    • 2010年7月(13)
    • 2010年6月(18)
    • 2010年5月(24)
    • 2010年4月(10)
    • 2010年3月(14)
    • 2010年2月(6)
    • 2010年1月(7)
    • 2009年11月(2)
    • 2009年10月(3)
    • 2009年9月(3)
    • 2009年8月(8)
    • 2009年7月(15)
    • 2009年6月(14)
    • 2009年4月(2)
    • 2008年12月(1)
    • 2008年6月(1)
    • 2008年5月(10)
    • 2008年4月(9)
    • 2008年3月(5)
    • 2008年2月(2)
    • 2008年1月(5)
    • 2007年12月(4)
    • 2006年9月(6)
    • 2006年7月(1)
  • 网络链接

    • 点滴记忆
    • 鼠标生活
    • 游戏攻略网
    • 西南精细化工信息网
    • 寒窗轩
    • 思远技术
    • 美图秀秀教程小屋
    • 陈旭辉的博客
    • Sの秘密基地
    • 冰博客主
    • 职称论文
    • 命运的陶醉
    • CrazyBo's Blog!
    • Live or Death
    • Web前端开发
    • Raysir's Home
    • 婴倍佳母婴博客
    • 柒月柒日晴’Blog
    • 恋过
    • 邹城论坛
    • Glacier's Blog
    • 网站运营方案
    • 陈旭辉的博客
    • 快乐忆站
    • 网站运营方案
    • 岳成立情感博客
    • 累了,叭杆烟
    • Scarecrow、小黑
    • 天籁De路过之
    • Emlog讨论组
  • 信息统计

    • 日志数量:193
    • 评论数量:449
    • 引用数量:1
    • 今日访问:678
    • 总访问量:176462
订阅Rss
Powered by emlog3.5.2 沪ICP备09072012号