求高手帮忙给做个用C语言编写倒计时器,60分钟的倒计时,求源代码,在线等啊。

如题所述

#include "stdio.h"
#include "Windows.h"
int main() {
printf("请输入倒计时时间(例如:01:26:30):");
int hour=0, min=0, sec=0;
scanf("%d:%d:%d", &hour, &min, &sec);
if(hour>24 || hour<0 || min>60 || min<0 || sec>60 || sec<0) {
printf("输入有误!\n");
return 0;
}
printf("倒计时开始!\n");
int i, j, k;
for(i=hour; i>=0; i--) {
for(j=min; j>=0; j--) {
for(k=sec; k>=0; k--) {
printf("\r%2d:%2d:%2d", i, j, k);
Sleep(1000);
}
sec = 59;
}
min = 59;
}
exit(0);
}

自定义时间,  一个小时的话 自己变成1:00:00  就行了

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-05-13
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <windows.h>
int main()
{
int time;
printf("输入100一下的一个数:");
scanf("%d",&time);
printf("\n\n\n\n\t\t\t\t");
for(;time>=0;time--)
{
printf("%d",time);
Sleep(1000);
if(time<=10)
{
printf("\b\b ");
}
else
{
printf("\b\b");
}
}
printf("%c\n\n\t\t\t\t\t\t~ melody 计时器 ~\n",3);
Sleep(3000);
return 0;
}

试试啊
第2个回答  2013-05-13
用Sleep()计时有误差。要用 time(NULL) 取当前时间,用difftime() 计算时间差。

#include<stdio.h>
#include<stdlib.h>
#include<windows.h>
#include<time.h>
main(){
int t,m,s,dt;
time_t t0,t_end;

printf("input down time: minutes and seconds, for example 2 30\n");
scanf("%d %d",&m,&s);
t = m * 60 + s;
t0 = time (NULL);
t_end = t0+t;
printf("t0=%d t_end=%d\n",t0,t_end);
while(1){
t0=time(NULL);
dt = difftime (t_end, t0);
if (dt <=0) break;
system("CLS");
printf("\n\n\n\n\n\n\n\tdt ....%d",dt);
Sleep(1000);
}
printf("\007");
return 0;
}