高手回答我c语言查看程序运行时间的问题

来源:百度知道 编辑:UC知道 时间:2024/05/12 07:24:42
我用了#include"time.h"中的clock()看,时间却是零,程序如下:
void InsertSort(int c[10]){
int i,j,b[11];
double start,finish;
b[1]=c[0];
start=(double)clock();
for(i=2;i<11;++i){
b[i]=c[i-1];
if(b[i]<b[i-1]){
b[0]=b[i];
for(j=i-1;j>0;--j)
{if(b[j]>b[0])b[j+1]=b[j];
else break;}
b[j+1]=b[0];}
}
finish=(double)clock();
printf("the sorting time is %.4fms",finish-start);
printf("\n");
j=0;
for(i=1;i<11;i++){printf("%6d",b[i]);j++ ;
if(j%10==0)printf("\n"); }
printf("\n");

}
问题出在哪?急需,明天问题就会撤.
按照fengjian_net的做法时不行的

可能是你程序执行的时间较短吧,其实你不必将clock()的返回值time_t改为double型,它是一个无符号的长整型,能足够处理时间。
改为双精度浮点数后,输出为
printf("%10.4lf ms", finish-start);