C语言中生产随机数及计算运行时间(微秒级)
来源:互联网 发布:手把手tensorflow 编辑:程序博客网 时间:2024/09/21 09:17
java中要生产随机数的 话 直接 new一个 Random就 可以 了 ,c语言中的话会稍微麻烦一点点。
计算运行时间 在比较算法运行效率中 要 用到 。
#include<stdio.h>#include <stdlib.h>#include <time.h> int main(){clock_t start, finish; //声明start和finish是两个时间srand(10);double time; //定义运行时间start = clock(); //获取开始时间printf("生成150000个随机数:\n");for (int i=0; i<150000; i++){ printf("%d ", rand()%100);}finish=clock();printf("\n");//time = (double)(finish - start);time = (double)(finish - start) / CLOCKS_PER_SEC; printf( "RunningTime:\n%f 秒\n",time);//显示}
运行 结果 :
当程序运行时间非常短的时候,上面的方法往往无法捕捉到运行的时间,下面的方法可以让程序记录运行时间的方法精确到微秒。
#include<stdio.h>#include <stdlib.h>#include <time.h> #include <sys/time.h>int main(){struct timeval tpstart,tpend; int timeuse;srand(10);printf("生成150000个随机数:\n");//获得初始时间gettimeofday(&tpstart,NULL);for (int i=0; i<150000; i++){ printf("%d ", rand()%100);}//获取结束时间gettimeofday(&tpend,NULL);printf("\n");//计算耗时timeuse=1000000*(tpend.tv_sec-tpstart.tv_sec)+tpend.tv_usec-tpstart.tv_usec;printf( "RunningTime:\n%d微秒\n",timeuse);}
其中
struct timeval {
time_t tv_sec; /* seconds */
suseconds_t tv_usec; /* microseconds */
};
其中对tv_usec的说明为时间的毫秒部分。 而在实际中,该函数以及Linux内核返回的timeval
类型的时间值,tv_usec代表的是微秒精度(10的-6次方秒)。
- C语言中生产随机数及计算运行时间(微秒级)
- C语言编程 计算程序运行时间 精确到微秒
- C语言 计算程序运行时间(精确到毫秒/微秒)
- C语言中生产随机数 rand()函数
- C语言 微秒级时间生成随机字符串
- C语言下产生大量的随机数和计算程序运行所用的时间
- C语言中如何计算程序运行的时间
- C、Java及Python中计算程序运行时间
- linux中C/C++获得微秒级时间
- 如何精确计算时间到微秒级
- C语言计算随机数
- 统计程序运行时间 微秒级计时器
- C++ 微秒级统计程序运行时间
- 计算程序的运行时间(c语言)
- C语言如何 计算程序运行时间?
- C 语言计算程序运行的时间
- C语言如何 计算程序运行时间?
- C语言计算程序运行时间
- zoj 2001.Adding Reversed Numbers
- win7 安装Opentaps 1.5
- 【点滴收藏】static_cast
- php的三元运算符嵌套
- 关于圆的计算
- C语言中生产随机数及计算运行时间(微秒级)
- 信号量和自旋锁区别
- 向量类的实现
- 面试中的概率题-数学期望(1)
- 插入最少字符使得只含数字,+,(,)的算式合法化
- BaseAdapter优化
- C中判断Mysql数据库中是否存在表
- 关于String的split的奇怪现象
- 深入剖析Amazon云计算平台