?? program.h
字號:
#include "define.h"
void Init()
{
int i;
T.YEAR=2008;
T.MONTH =12;
T.DAY =31;
T.HOUR =23;
T.MINUTE=59;
T.SECOND=55;
Print();
for(i=1;i<=N;i++)
{
printf("設定第%d次鬧鐘時間:\n",i);
scanf("%d",&C[i].YEAR);
scanf("%d",&C[i].MONTH);
scanf("%d",&C[i].DAY);
scanf("%d",&C[i].HOUR);
scanf("%d",&C[i].MINUTE);
scanf("%d",&C[i].SECOND);
C[i].FLAG=WAIT;
C[i].NUMBER=i+1;
}
}
void Print()
{
printf("假定當前時間是%d年%d月%d日%d時%d分%d秒\n",T.YEAR,T.MONTH,T.DAY,T.HOUR,T.MINUTE,T.SECOND);
}
void Begin()
{
printf("輸入1產生中斷,輸入0無中斷\n");
}
void Stop()//產生中斷
{
T.SECOND++;
if(T.SECOND>=60)
{
T.MINUTE=T.MINUTE+T.SECOND/60;
T.SECOND=T.SECOND%60;
if(T.MINUTE>=60)
{
T.MINUTE=T.MINUTE%60;
T.HOUR=T.HOUR+T.MINUTE/60;
}
if(T.HOUR>=24)
{
T.HOUR=T.HOUR%24;
T.DAY=T.DAY+T.HOUR/24;
}
switch(T.MONTH)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
if(T.DAY>=31)
{
T.MONTH=T.MONTH+T.DAY/31;
T.DAY=T.DAY%30;
}
break;
case 4:
case 6:
case 9:
case 11:
if(T.DAY>=30)
{
T.MONTH=T.MONTH+T.DAY/30;
T.DAY=T.DAY%29;
}
break;
case 2:
if((T.YEAR%4==0&&T.YEAR%400!=0)||(T.YEAR%400==0))
{
if(T.DAY>=29)
{
T.MONTH=T.MONTH+T.DAY/29;
T.DAY=T.DAY%28;
}
}
else
{
if(T.DAY>=28)
{
T.MONTH=T.MONTH+T.DAY/28;
T.DAY=T.DAY%27;
}
}
break;
default:printf("系統時間錯誤!程序非法結束\n");
exit(0);
}
if(T.MONTH>=12)
{
T.YEAR=T.YEAR+T.MONTH/12;
T.MONTH=T.MONTH%12;
}
}
}
void Clock()//是否有鬧鐘時間到
{
int i;
for(i=1;i<=N;i++)
{
if(T.MINUTE==C[i].MINUTE&&T.SECOND==C[i].SECOND&&C[i].FLAG==WAIT)
{
printf("鬧鐘%d時間到!\n",C[i].NUMBER);
C[i].FLAG=FINISH;
NUM--;
}
else
continue;
}
}
void Over()//所有鬧鐘時間都到了,程序結束
{
printf("所有鬧鐘已結束!\n");
printf("程序結束!\n");
exit(0);
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -