C语言里面怎样测出程序运算的时间?

C语言里面怎样测出程序运算的时间?
请详细的解释下.谢谢

#include <time.h>
#include <stdio.h>

int main()
{
//...

double Times = clock() / (double)(CLOCKS_PER_SEC);
printf("%.2lf\n",Times);

//...
return 0;
}

简单地说,就是使用time.h库中的clock()函数。
具体讲,程序中的clock()函数在time.h中声明,每次调用它,返回程序自开始运行至此经历的时间,单位是(1/CLOCKS_PER_SEC)秒,CLOCKS_PER_SEC是在time.h中声明的一个常数,在Windows环境下,它的值是1000,也就是说若程序执行了1.5s,调用clock()函数会返回1500;在Linux或Unix环境下,它的值是1000000,即此时clock()函数会返回1500000,为了增强程序的可移植性,故通用写法为clock() / (double)(CLOCKS_PER_SEC)。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-07-11
扔个时间种子就OK了

#include "time.h"
time_t a,b;
clock_t start,end;

srand(time(NULL));

start=clock();
a=time(NULL);

.....

....

end=clock();
b=time(NULL);
printf("It took you %6.3f seconds\n",(double)(end-start)/18.2);//18.2 换算
//这或者用difftime(b,a)也可以
printf("It took you %6.3f seconds\n",difftime(b,a));本回答被提问者采纳
第2个回答  2008-07-11
如果要测出本程序运算的时间,那么一个简单的思路就是,在程序开始和结尾两处分别获得系统时间戳,然后求出这两个时间戳的差值。
第3个回答  2008-07-11
在程序开始和结束时分别调用一次clock()函数,求两次返回值的差,再除以CLOCKS_PER_SEC就可以知道程序执行的秒数。

上面提到的函数和宏在time.h头文件中。
相似回答