首页 > 编程知识 正文

取随机数(三种方法生成随机数之GetTickCount篇)

时间:2023-05-04 09:48:33 阅读:121373 作者:2910

GetTickCount函数

函数: GetTickCount返回(retrieve )操作系统从启动到当前经过的时间(elapsed )的毫秒数,返回值为DWORD。

函数原型:

dword gettickcount (语音;

int main () {int Num; int i=10000; fstream outfile; outfile.open(data10000.txt )、fstream:out ); srand (千兆计数); 生成while(I )//10000个随机数(//rand函数生成的数的范围为0~0x7fff,因此将生成的随机数除以0x7fff,将//乘以n,得到的范围为0~nnum=(int ) I----; }outfile.close (; 返回0; }通常,称为随机种子的东西,如果不初始化随机种子,计算机就会有生成的随机种子,递归的结果每次都完全一样,所以每次运行程序时都必须初始化随机种子。 vc方法调用一个名为srand(int )的函数,其参数是随机种子,但给定常量后得到的随机序列完全相同,因此可以将系统时间用作随机种子

调用方法为srand(gettickcount ) ),但每次调用rand ) )时不能用srand(gettickcount ) )初始化。 由于计算机当前运行时间相对较快,因此rand ) )连续调用并未更新系统时间,因此在这种情况下,可以调用Gettickcount函数以避免出现重复的随机数结果。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。