C語言- clock() 運用

Example1:開始計時與結束
#include
#include
double ms_time();
int main(void)
{
  float a[100000],b[100000],c[100000];
  int i,j;

  //宣告clock function
  clock_t start, end;
  //開始計時
  start = clock();
  //以下亂寫,單純讓電腦跑久一點
  for(j=0;j<1000;j++){
    for(i=0;i<100000;i++){
      a[i] = drand48()*5;
      b[i] = drand48()*5;
      c[i] = a[i]*b[i];
    }
  }
  //計時結束
  end = clock();
  printf("The time was: %f\n", (double)(end - start));

  return 0;
}
備註:這樣發現跑出來的時間是以小時為單位,如下改成是以毫秒為單位。

Example2:以毫秒為單位

#include
#include
double ms_time();
int main(void)
{
  float a[100000],b[100000],c[100000];
  int i,j;
  double start, end;
  start = ms_time();

  for(j=0;j<1000;j++){
    for(i=0;i<100000;i++){
      a[i] = drand48()*5;
      b[i] = drand48()*5;
      c[i] = a[i]*b[i];
    }
  }
  end = ms_time();
  printf("The time was: %f\n", (double)(end - start));

  return 0;
}
double ms_time(){
  return (double)clock()/CLOCKS_PER_SEC*1000;
}

備註:clock()/CLOCKS_PER_SEC 在這邊就是以為單位

沒有留言:

張貼留言