C语言中怎样生成随机数?

不是跟时间有关的伪随机数。跟时间有关的数基本每次都比原来大,随机性不强。... 不是跟时间有关的伪随机数。跟时间有关的数基本每次都比原来大,随机性不强。 展开
 我来答
yufengly
推荐于2017-12-16
知道答主
回答量:15
采纳率:0%
帮助的人:15.7万
展开全部
在VC中设计到随机数有两个函数

srand() and rand()

srand() 的作用是是一个种子,提供每次获得随机数的基数而已,rand()根据种子而产生随机数

注意

1:srand() 里的值必须是动态变化的,否则得到的随机数就是一个固定数

2:其实可以不用写srand() ,只用rand()就可以了,省事,简单,例子如下

如果我们想得到一个 0-60的随机数那么可以写成

int i;

i=rand()%60;

就可以了。

当然最好有个统一的标注如下:

int i;

srand((unsigned)time( NULL ));

i=rand()%60;

这样就OK了。
曾代卫萌
2019-01-13 · TA获得超过3826个赞
知道大有可为答主
回答量:3152
采纳率:33%
帮助的人:160万
展开全部
C语言生成
随机数

函数
为rand。
1
声明:
int
rand(void);
2
头文件:
stdlib.h
3
功能:
获取一个非负随机
数值

4
注意事项:
a)
rand是
伪随机数
,由一个种子计算得来。
如果种子相同,每次启动
程序
,获取到的
随机序列
是固定的。
可以通过srand设置当前时间作为种子,使随机效果更好。
srand(time(NULL));
b)
要获取[m,n]范围的随机数,可以使用代码
rand()%(n-m+1)+m
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
始自考紫萱
2019-02-17 · TA获得超过3764个赞
知道大有可为答主
回答量:3038
采纳率:27%
帮助的人:448万
展开全部
例子如下
如果我们想得到一个
0-60的随机数那么可以写成
int
i;
这样就OK了,简单;
i=rand()%60;
i=rand()%60;
srand((unsigned)time(
NULL
)),否则得到的随机数就是一个固定数
2:srand()
里的值必须是动态变化的:
int
i。
当然最好有个统一的标注如下;
就可以了,省事:其实可以不用写srand()
,只用rand()就可以了,rand()根据种子而产生随机数
注意
1,提供每次获得随机数的基数而已在VC中设计到随机数有两个函数
srand()
and
rand()
srand()
的作用是是一个种子
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友ce293ac
2008-05-23 · TA获得超过1253个赞
知道小有建树答主
回答量:475
采纳率:0%
帮助的人:373万
展开全部
RANDOM()函数
在<math.h>文件里
此函数产生的是0-1之间的随机数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
pujia12345
2008-05-23 · TA获得超过3680个赞
知道大有可为答主
回答量:3456
采纳率:0%
帮助的人:2953万
展开全部
利用时间再附加一些算法,可以达到效果
rand()的结果每次一样,不好用
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式