找回密码
赶紧注册吧

QQ登录

只需一步,快速开始

当前位置: 交友网 > 技能必杀技 > 生活技能分享 >

C++如何实现随机浏览给定(指定)的多个(几十上百个)网址中的

文章地址: http://www.tflove.com/jineng_sh/a21830.html
文章摘要:
C++中的尺度库cstdlib(包括在iostream中)供给两个辅助天生伪随机数的函数:rand()和srand()。 函数一:int rand(void); 从srand(seed)中指定seed开端, C++如何使输出的最后一个数没有逗号 ,返回一个范畴介于[seed,RAND_MAX(0x7fff))的随机整数 函数二:void srand(unsigned seed); 参数seed是rand()的随机种子,即用来初始化rand()的起始值。 举多少个例子阐明一下,假设咱们要取得0~6之间的随机
时间:2013-09-20 22:36来源:未知 作者:admin 点击: 次 《C++如何实现随机浏览给定(指定)的多个(几十上百个)网址中的
C++中的尺度库<cstdlib>(包括在<iostream>中)供给两个辅助天生伪随机数的函数:rand()和srand()。
函数一:int rand(void);
从srand(seed)中指定seed开端,C++如何使输出的最后一个数没有逗号,返回一个范畴介于[seed,RAND_MAX(0x7fff))的随机整数
函数二:void srand(unsigned seed);
参数seed是rand()的随机种子,即用来初始化rand()的起始值。

举多少个例子阐明一下,假设咱们要取得0~6之间的随机数(不包含6自身):
程序一(不指定seed的值):
for(int i=0;i<10,C++培训机构哪里好?如何选择正确的IT培训机构?;i++)
{
ran_num=rand()%6;
cout<<,C++中如何连接Access数据库?;ran_num<<“ ”,C++ 帮忙如何16进制转为10进制
}
每次运行程序一都将输出:5 5 4 4 5 4 0 0 4 2
程序二(指定seed为1):
srand(1);
for(int i=0;i<10;i++)
{
ran_num=rand()%6,c++ 如何连接mysql数据库
cout<<ran_num<<“ ”;
}
每次运行程序二都将输出:5 5 4 4 5 4 0 0 4 2,跟程序一的结果完整一样。
程序三(指定seed的值为6):
srand(6);
for(int i=0;i<,c++ 中如何声明一个 int 变量;10;i++)
{
ran_num=rand()%6;
cout<<ran_num<<“ ”;
}
每次运行程序三都将输出:4 1 5 1 4 3 4 4 2 2,固然值跟程序二不一样,不外每次运行时的结果也都雷同。
程序四(指定seed的值为当前体系流逝了的时间,单位为秒(time_t time(0))):
#include<ctime>
……
srand((unsigned)time(0));
for(int i=0;i<10;i++)
{
ran_num=rand()%6;
cout<<ran_num<<“ ”;
}
运行程序四的时候,第一次输出:0 1 5 4 5 0 2 3 4 2,第二次输出:3 2 3 0 3 5 5 2 2 3,... ...每次的运行结果都不一样,由于每次启动程序时的时刻都不同。
对于time_t time(0)
time_t 被定义为长整型,它将返回从1970年1月1日零时零分零秒到当初所阅历过的时光,单位为秒。比方输出 cout<<time(0) ,将得到值约为1169174701,约即是37(年)* 365(天)* 24(小时)* 3600(秒)(月跟日不计)。
关于ran_num=rand()%6
将rand()的返回值与6求模是必需的,这样才干确保目标随机数落在[0,6)之间,否则很可能会得到一个十分宏大的数值 (RAND_MAX个别为32767)。一个通用的公式是:要想获得[a,b)之间的随机整数,应用(rand()%(b-a))+ a,成果包含 a 而不含 b 。

(责任编辑:admin)
分享到: QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏0