c语言程序计时
① 请问c语言能不能做一个倒计时的功能
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <windows.h>
void my_menu(void)
{
system("cls");
printf("界面\n");
}
void my_operate(void)
{
printf("%c\n", getch());//注意:可以将输入值用数组等保存,这里没有保存
}
void my_time(void)
{
int i;
for (i=60; i>0; i--)
{
Sleep(999);
system("cls");
printf("倒计时:%d\n", i);
printf("\n请输入一个字符:");
if (kbhit())
{
my_operate();
}
}
my_menu();
}
int main(void)
{
my_time();
return 0;
}
② 关于C语言程序设计的计时器
C语言中的头文件time.h中定义了库函数clock(),
它返回的是从程序运行开始算起的时间,一时钟周期为单位,
time.h还定义了符号:CLOCKS_PER_SEC,
即一秒钟的时钟周期。这样就简单了,
在头文件中加入#include<time.h>,在程序main()主函数的开头定义long now=0;
并给把clock()赋值给now,即now=clock();记录程序开始时的时间,clock()会继续增加,
但now已经确定为开始那一时刻clock()的值,
在程序结尾,算式clock()-now就是程序执行所需的时间,
但是是以时钟周期为单位的,
如果想得到以秒为单位的时间只要输出(clock()-now)/CLOCKS_PER_SEC就是了,
即在程序结尾添加
printf("%f",(clock()-now)/CLOCKS_PER_SEC);就可以了。
③ c语言 倒计时时钟程序
如果你有TC,可以试一试。
VC 的 kbhit() 不能返回 键名。
23:59:59 -- 86400 秒
#include <stdio.h>
#include <windows.h>
#include <conio.h>
void main()
{
long int t;
int flag =0;
t = 86400;
printf("press S start, press E stop\n");
while(1)
{
if (kbhit() == 'S' || kbhit() == 's') flag =1;
if (kbhit() == 'E' || kbhit() == 'e') flag =0;
Sleep(1000);
if (flag == 1) t = t -1;
if (t <= 0) break;
printf("%d ",t);
}