Sample:
srand( (unsigned)time( NULL ) );
int i;
for( i = 0; i < 10;i++ )
printf( " %6d\n", rand()%(520-20)+20 );OK!!!
srand( (unsigned)time( NULL ) );
int i;
for( i = 0; i < 10;i++ )
printf( " %6d\n", rand()%(520-20)+20 );OK!!!
解决方案 »
- 求一个华军软件园 软件作者注册的邀请码。。
- 急,菜鸟提问?
- toolbar拖动的问题
- 請間 currency 類型怎麼使用?
- 怎样给框架带的菜单加上背景?(在线等,分不够再加,很急!!)
- VC怎样处理Outlook2000通信簿里的信息??
- 先出100分:98连接SqlServer2000的源码,我只要能连上的源码,最好是测试过的!!!
- - 解释SOAP -
- 我用C++制作了一程序,要想全屏显示并运行,该怎么样做
- 在VC基于对话框的程序中,加入控件作封面(CSplashWnd),可自带的程序中只有SetTimer(),没有KillTimer(),好象加到什么地方都不对劲?
- 大家帮我看看这么一个问题——————
- 如何在ABOUT对话框里面添加一个条文本,让他能连接到某个网站
bx=20+rand()%500;
by=20+rand()%300;
计算机的随机数都是由伪随机数,即是由小M多项式序列生成.产生每个小序列都有一个初始值,即随机种子.
srand()产生随机种子.
rand()产生随机数
要保证计算机产生不相同的随机数,应保证它们的随机种子是不一样的.srand( (unsigned)time( NULL ) );就是以时间做为随机种子,因为每次你运行的时间总是不一样的.补充一点是小M多项式序列的周期是65535,即每次利用一个随机种子生成的随机数的周期是65535,即你取得65535个随机数后它们又重复出现了.
int nRand;
srand( (unsigned)time( NULL ) );for(int i=0;i<65538;i++)
{
nRand=rand();
if(i==1||i==65536)
printf("%d\r\n",nRand);
}
int i=min(max(rand%520),20),520);