Discuz! Board

 找回密码
 立即注册
查看: 586|回复: 0

2022.20

[复制链接]

51

主题

54

帖子

8724

积分

论坛元老

Rank: 8Rank: 8

积分
8724

大牙狸 Lv:12
发表于 2022-10-20 19:14:58 | 显示全部楼层 |阅读模式
  1. #include<bits/stdc++.h>
  2. #include<conio.h>
  3. #include <windows.h>
  4. using namespace std;
  5. int z;
  6. char ch;
  7. struct ty
  8. {
  9.         int a;
  10.         int f;
  11.         int s;
  12.         int y;
  13.         int m;
  14.         int d;
  15.         string xg;
  16. }t={19,6,30,2022,10,20};

  17. void gotoxy(HANDLE hout, int x, int y);

  18. void gotoxy(HANDLE hout, int x, int y){
  19.   COORD pos;
  20.   pos.X = x;
  21.   pos.Y = y;
  22.   SetConsoleCursorPosition(hout, pos);
  23. };

  24. string CaculateWeekDay(int y,int m, int d)
  25. {
  26.             string w;

  27.         if(m==1||m==2) {
  28.         m+=12;
  29.         y--;
  30.         }
  31.         int iWeek=(d+2*m+3*(m+1)/5+y+y/4-y/100+y/400)%7;
  32.         switch(iWeek)
  33.         {
  34.         case 0: w="星期一"; break;
  35.         case 1: w="星期二\n"; break;
  36.         case 2: w="星期三\n"; break;
  37.         case 3: w="星期四\n"; break;
  38.         case 4: w="星期五\n"; break;
  39.         case 5: w="星期六\n"; break;
  40.         case 6: w="星期日\n"; break;
  41.         }
  42.         return w;
  43. }
  44. int sth(int y)
  45. {
  46.         if((y%4==0)&&y%100!=0)
  47.         {
  48.                         z=1;               
  49.         }
  50.         else if(y%400==0)
  51.         {
  52.                 z=1;
  53.         }
  54.         else
  55.                 z=0;
  56.         return z;
  57. }
  58. int main()
  59. {
  60.         system("color 3F");
  61.     HANDLE hout = GetStdHandle(STD_OUTPUT_HANDLE);
  62.         int n[2][12]={31,28,31,30,31,30,31,31,30,31,30,31,
  63.                                                                                                  31,29,31,30,31,30,31,31,30,31,30,31};
  64.         while(1)
  65.         {         
  66.                 t.s++;
  67.                 if(t.s==60)
  68.                 {
  69.                         t.s=0;
  70.                         t.f++;
  71.                         if(t.f==60)
  72.                         {
  73.                                 t.f=0;
  74.                                 t.a++;
  75.                                 if(t.a==24)
  76.                                 {
  77.                                         t.a=1;
  78.                                         t.d++;
  79.                                         if(t.d==n[sth(t.y)][t.m-1]+1)
  80.                                         {
  81.                                                 t.d=1;
  82.                                                 t.m++;
  83.                                                 if(t.m==13)
  84.                                                 {
  85.                                                         t.m=1;
  86.                                                         t.y++;
  87.                                                 }
  88.                                         }
  89.                                 }
  90.                         }
  91.                 }
  92.                
  93.         t.xg=CaculateWeekDay(t.y,t.m,t.d);                              
  94.                 cout<<t.y<<"年"<<t.m<<"月"<<t.d<<"日"<<setw(2)<<t.a<<":"<<setw(2)<<t.f<<":"<<setw(2)<<t.s<<' '<<t.xg<<endl;
  95.         Sleep(900);
  96.         gotoxy(hout,0,0);
  97.         if(kbhit())
  98.         {
  99.             ch=getch();
  100.             if(ch='w')
  101.             {
  102.                 gotoxy(hout,0,0);
  103.                 cout<<"    ";
  104.                 gotoxy(hout,0,0);
  105.                 cin>>t.y;
  106.                 gotoxy(hout,6,0);
  107.                 cout<<"  ";
  108.                 gotoxy(hout,6,0);
  109.                 cin>>t.m;
  110.                 gotoxy(hout,10,0);
  111.                 cout<<"  ";
  112.                 gotoxy(hout,10,0);
  113.                 cin>>t.d;
  114.                 gotoxy(hout,14,0);
  115.                 cout<<"  ";
  116.                 gotoxy(hout,14,0);
  117.                 cin>>t.a;
  118.                 gotoxy(hout,17,0);
  119.                 cout<<"  ";
  120.                 gotoxy(hout,17,0);
  121.                 cin>>t.f;
  122.                 gotoxy(hout,20,0);
  123.                 cout<<"    ";
  124.                 gotoxy(hout,20,0);
  125.                 cin>>t.s;
  126.                 gotoxy(hout,0,0);
  127.             }
  128.         }
  129.         
  130.         }
  131.     return 0;
  132. }
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|DiscuzX

GMT+8, 2025-7-18 11:20 , Processed in 0.065575 second(s), 22 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.. 技术支持 by 巅峰设计

快速回复 返回顶部 返回列表