本程序演示如何测试一段程序的运行时间。
以冒泡排序算法为例。
#include "time.h" //与时间相关的函数
#include "stdlib.h" //rand()函数在此库中
#include "stdio.h" //输入输出相关函数
void BubbleSort(int *a, int n)
{//冒泡排序, a是指针,代表连续空间的首地址,n表示有n个元素
for(int i=1;i<=n-1;i++)
{
for(int j=0;j<=n-i-1;j++)
{
if(a[j]>a[j+1])
{
int t;
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
}
int main( )
{
time_t start, stop;
int n;
int data_num[]={10000,30000,60000,90000};//问题规模
int j;
for(j=0;j<4;j++)
{
n=data_num[j];//问题规模
int a[n]={0};
for(int i=0;i<n;i++)
a[i]=rand();
start=time (0); //单位是秒
BubbleSort(a,n);
stop=time (0);
time_t runTime = stop - start;
printf ( "%d %d\n" , n,runTime );
}
return 0;
}#inc