|
- #include<bits/stdc++.h>
- #include <windows.h>
- using namespace std;
- struct a
- {
- int hou,min,sec,day,yea,mon;
- }b;
- int t1=0;
- int i[2][12]={31,28,31,30,31,30,31,31,30,31,30,31,
- 31,29,31,30,31,30,31,31,30,31,30,31};
- int rn(int t)
- {
- int t1;
- if (t % 4 == 0)
- {
- if (t % 100 == 0)
- {
- if (t % 400 == 0)
- t1=1;
- else
- t1=0;
- }
- else
- t1=1;
- }
- else
- t1=0;
- return t1;
- }
- void CaculateWeekDay(int y,int m, int d)
- {
- if(m==1||m==2) {
- m+=12;
- y--;
- }
- int iWeek=(d+2*m+3*(m+1)/5+y+y/4-y/100+y/400)%7;
- switch(iWeek)
- {
- case 0: printf("星期一"); break;
- case 1: printf("星期二"); break;
- case 2: printf("星期三"); break;
- case 3: printf("星期四"); break;
- case 4: printf("星期五"); break;
- case 5: printf("星期六"); break;
- case 6: printf("星期日"); break;
- }
- }
- int main(){
- time_t t = time(NULL);
- tm *pt = localtime(&t);
- b.yea = pt->tm_year+1900;
- b.mon = pt->tm_mon+1;
- b.day = pt->tm_mday;
- b.hou = pt->tm_hour;
- b.min = pt->tm_min;
- b.sec = pt->tm_sec;
- rn(b.yea);
- here:
- system("color 0E");
- if(b.sec==60){
- b.sec=0;
- b.min+=1;
- }
- if(b.min==60){
- b.min=0;
- b.hou+=1;
- }
- if(b.hou==24){
- b.hou=0;
- b.day+=1;
- }
- if(b.day==i[rn(b.yea)][b.mon-1]+1){
- b.day=1;
- b.mon+=1;
- }
- if(b.mon==12){
- b.mon=0;
- b.yea+=1;
- }
- cout<<setw(4)<<b.yea<<"年 "<<setw(2)<<b.mon<<"月"<<" "<<setw(2)<<b.day<<"号"<<" ";
- CaculateWeekDay(b.yea,b.mon,b.day);
- cout<<" "<<setw(2)<<b.hou<<":"<<setw(2)<<b.min<<":"<<setw(2)<<b.sec<<endl;
- Sleep(1000);
- b.sec+=1;
- system("cls");
- goto here;
- return 0;
- }
复制代码 |
|