//有很多種方法,我這里用的是其中一種:
我們提供的服務(wù)有:成都網(wǎng)站建設(shè)、成都做網(wǎng)站、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、臨澧ssl等。為上千企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的臨澧網(wǎng)站制作公司
#include
#include
int main(void) {
int minutes;
printf("請輸入分鐘數(shù):\n");
scanf("minutes");
for (; minutes = 0; --minutes) {
for (int i = 60; i = 0; --i) {
printf("還剩 %d 分鐘 %d 秒 結(jié)束\n", minutes, i);//輸出剩余時間
sleep(1000);//延時函數(shù)延時一秒
};
};
printf("計時結(jié)束\n");
system("pause");
return 0;
};
//我沒上編譯器測試,但是具體架構(gòu)就是這樣
tdio.h
#include conio.h
#include windows.h
#include stdlib.h
struct tm //定義時間結(jié)構(gòu)體,包括時分秒和10毫秒
{
int hours,minutes,seconds;
int hscd;
}time,tmp,total; //time用以計時顯示,tmp用以存儲上一階段時間,total記總時間
int cnt;
FILE* fout;
//每次調(diào)用update函數(shù),相當(dāng)于時間過了10ms
void update(struct tm *t)
{
(*t).hscd++; //10ms單位時間加1
cnt++;
if ((*t).hscd==100) //計時滿1s,進(jìn)位
{
(*t).hscd=0;
(*t).seconds++;
}
if ((*t).seconds==60) //計時滿一分,進(jìn)位
{
(*t).seconds=0;
(*t).minutes++;
}
if ((*t).minutes==60) //計時滿一小時,進(jìn)位
{
(*t).minutes=0;
(*t).hours++;
}
if((*t).hours==24) (*t).hours=0;
//delay();
Sleep(10); //Sleep是windows提供的函數(shù),作用是暫停程序,單位毫秒,所以此處暫停10ms
}
void display(struct tm *t)
{
//此處輸出計時結(jié)果,\r為回車不換行,既一直在同一行更新時間
printf("%d:",(*t).hours);
printf("%d:",(*t).minutes);
printf("%d:",(*t).seconds);
printf("%d\r",(*t).hscd);
//printf("Now, press ‘e’ key to stop the clock…");
}
void time_init() //初始化時間
{
time.hours=time.minutes=time.seconds=time.hscd=0;
}
void get_total() //計算總時間
{
total.hscd = cnt % 100;
cnt /= 100;
total.seconds = cnt % 60;
cnt /= 60;
total.minutes = cnt % 60;
cnt /= 60;
total.hours = cnt;
}
int main()
{
char m;
time_init();
cnt = 0;
fout = fopen("timeout.txt","w");
printf("按回車鍵開始計時!\n");
while(1)
{
m = getch();
if(m != ‘\r’) //讀入一個輸入,如果是回車,那么跳出次循環(huán)
printf("輸入錯誤,僅能輸入回車鍵!\n");
else
break;
}
printf("已經(jīng)開始計時,但是你可以按回車鍵以分段計時!\n");
while(1)
{
if(kbhit()) //此處檢查是否有鍵盤輸入
{
m=getch();
if(m == ‘\r’) //如果等于回車,那么計時結(jié)束,跳出循環(huán)
break;
else if(m == ‘ ‘) //如果等于空格,顯示此次計時,初始化計時器
{
tmp = time; //記錄上一段計時器結(jié)果
fprintf(fout,"%d:%d:%d:%d\n",tmp.hours,tmp.minutes,tmp.seconds,tmp.hscd); //寫入文件
time_init();
printf("\n");
}
else
{
printf("輸入錯誤,僅支持輸入回車鍵或者空格鍵!\n");
}
}
update(time); //更新計時器
display(time); //顯示計時器時間
}
tmp = time; //輸出最后一次即使結(jié)果,寫入文件
fprintf(fout,"%d:%d:%d:%d\n",tmp.hours,tmp.minutes,tmp.seconds,tmp.hscd);
get_total(); //計算總的時間,顯示,并寫入文件
printf("\n總時間:%d:%d:%d:%d\n",total.hours,total.minutes,total.seconds,total.hscd);
fprintf(fout,"統(tǒng)計時間:%d:%d:%d:%d\n",total.hours,total.minutes,total.seconds,total.hscd);
fclose(fout);
printf("已經(jīng)保存到當(dāng)前目錄下的timeout.txt文件中按任意鍵結(jié)束!");
getch();
}
另外,站長團(tuán)上有產(chǎn)品團(tuán)購,便宜有保證
#includestdio.h#includetime.h
int main(){ time_t start, end;
int i;
start = time(NULL);
end = time(NULL);
printf("please input:");
for(i = 0; i 3; i++){
while(end - start i){
end = time(NULL);
}
cystem("cls");
printf("%d", i);
}
return 0;
}