C语言计算时间

发布网友 发布时间:2022-04-21 07:26

我来回答

5个回答

热心网友 时间:2022-06-18 17:09

在C语言中计算时间,可以使用标准库中的计时函数——clock()。

函数原型:

clock_t clock( void );

其中clock_t是用来保存时间的数据类型,在time.h文件中,可以找到对它的定义:

#ifndef _CLOCK_T_DEFINED
typedef long clock_t;
#define _CLOCK_T_DEFINED
#endif


很明显,clock_t是一个长整形数。在time.h文件中,还定义了一个常量CLOCKS_PER_SEC,它用来表示一秒钟会有多少个时钟计时单元,其定义如下:

#define CLOCKS_PER_SEC ((clock_t)1000)

可以看到每过千分之一秒(1毫秒),调用clock()函数返回的值就加1。下面举个例子,可以使用公式clock()/CLOCKS_PER_SEC来计算一个进程自身的运行时间:

void elapsed_time()
{
printf("Elapsed time:%u secs.\n",clock()/CLOCKS_PER_SEC);
}

当然,也可以用clock函数来计算的机器运行一个循环或者处理其它事件到底花了多少时间:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main( void )
{
long    i = 10000000L;
clock_t start, finish;
double  ration;
printf( "Time to do %ld empty loops is ", i );
start = clock();
while( i-- )      ;
finish = clock();
ration = (double)(finish - start) / CLOCKS_PER_SEC;
printf( "%f seconds\n", ration );
system("pause");
}

热心网友 时间:2022-06-18 17:10

#include <stdio.h>
int main(void)
{
int min_start,min_end,sec_start,sec_end,last;
scanf("%d%*c%d%d%*c%d",&min_start,&sec_start,&min_end,&sec_end);
last=60*(min_end-min_start)+(sec_end-sec_start);
printf("%d\n",last);
return 0;
}

热心网友 时间:2022-06-18 17:10

//最短最精辟 不解释
24:55 26:12
77
Press any key to continue

#include <stdio.h>
main()
{
int begM,endM,begS,endS;
scanf("%d:%d %d:%d",&begM,&begS,&endM,&endS);
printf("%d\n",60*(endM-begM)+(endS-begS));
}

热心网友 时间:2022-06-18 17:11

#include <stdio.h>
int main()
{
int a,b,c,d;
scanf("%d:%d",&a,&b);
scanf("%d:%d",&c,&d);
printf("%d\n",c*60+d-(a*60+b));
return 0;
}

热心网友 时间:2022-06-18 17:12

#include <stdio.h>
int main()
{
int a,b,c,d;
scanf("%d:%d %d:%d",&a,&b,&c,&d);
printf("%d\n",c*60+d-(a*60+b));
}
满意请采纳!

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com