| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1456 人关注过本帖
标题:求助:关于srand函数的详解
只看楼主 加入收藏
醉生梦死
Rank: 1
等 级:新手上路
帖 子:77
专家分:0
注 册:2007-8-21
收藏
 问题点数:0 回复次数:5 
求助:关于srand函数的详解
//游戏中强装备的简易程序
#include <iostream>
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
using namespace std;
int main(){
int i=0,j=0,t=0;
char c;
loop:srand( (unsigned)time( NULL ) );
i=rand() ;
cout<<"要精练:是 按d 否 任意键... ?"<<endl;
c=getchar();

if (c=='d')
{
if (i%2!=0)
t=t+1;
else goto l0;
cout<<"装备加 +"<<t<<endl;

goto loop;
// else
l0: cout<<"装备消失"<<endl;

//}
}else cout<<"取消精练"<<endl;
system("PAUSE");
return 0;
}

loop:srand( (unsigned)time( NULL ) ); 这个函数是求随即数的,但是在不明白系统是怎么通过这个函数分配随机数的,谁能详细跟我讲讲这个函数,谢谢啦
搜索更多相关主题的帖子: srand 函数 详解 goto include 
2007-08-28 13:16
xchxp321god
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2007-8-28
收藏
得分:0 

C++中用于产生随机数的函数
rand() 产生0——32767之间的随机整数
srand(number) 种子函数。其中number是无符号整型参数,称为种子值。但种子值number不同的时候,函数sand产生的随机数序列也不同。
time(NULL) 返回用整型表示系统当前时间。上程序中作为srand函数的参数。
这样讲明白了吗?


2007-08-28 14:27
醉生梦死
Rank: 1
等 级:新手上路
帖 子:77
专家分:0
注 册:2007-8-21
收藏
得分:0 
以下是引用xchxp321god在2007-8-28 14:27:09的发言:

C++中用于产生随机数的函数
rand() 产生0——32767之间的随机整数
srand(number) 种子函数。其中number是无符号整型参数,称为种子值。但种子值number不同的时候,函数sand产生的随机数序列也不同。
time(NULL) 返回用整型表示系统当前时间。上程序中作为srand函数的参数。
这样讲明白了吗?


2007-08-28 23:31
醉生梦死
Rank: 1
等 级:新手上路
帖 子:77
专家分:0
注 册:2007-8-21
收藏
得分:0 
回复:(xchxp321god)C++中用于产生随机数的函数rand...
但种子值number不同的时候,函数srand产生的随机数序列也不同。
time(NULL) 返回用整型表示系统当前时间。上程序中作为srand函数的参数。
不太明白这句话什么意思,这个程序用(unsigned)time(NULL)作为参数有什么好处吗?或者说用这个作为参数会产生什么样的随即数系列呢?

2007-08-28 23:36
xchxp321god
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2007-8-28
收藏
得分:0 

srand()需要有个无符号整型参数种子.
只要是无符号整型参数都可以作为种子.但是既然是随机,为了达到随机的效果如果只给它个0到10的数让它去生成,效果肯定不好了. time()返回的系统当前时间是时时刻刻都在变化的,能更好的体现随机的要求.另外这里的(unsigned)起到强制类型转换的作用


2007-08-28 23:53
aipb2007
Rank: 8Rank: 8
来 自:CQU
等 级:贵宾
威 望:40
帖 子:2879
专家分:7
注 册:2007-3-18
收藏
得分:0 

如果单纯想了解怎么用,记住就行。

否则就去看下<ctime>头文件。


Fight  to win  or  die...
2007-08-29 00:32
快速回复:求助:关于srand函数的详解
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012247 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved