网页
资讯
视频
图片
知道
文库
贴吧
地图
采购
进入贴吧
全吧搜索
吧内搜索
搜贴
搜人
进吧
搜标签
日
一
二
三
四
五
六
签到排名:今日本吧第
个签到,
本吧因你更精彩,明天继续来努力!
本吧签到人数:0
一键签到
成为超级会员,使用一键签到
一键签到
本月漏签
0
次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行
补签
。
连续签到:
天 累计签到:
天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
10月06日
漏签
0
天
c语言吧
关注:
793,995
贴子:
4,319,723
看贴
图片
吧主推荐
视频
游戏
4
回复贴,共
1
页
<<返回c语言吧
>0< 加载中...
有没有大佬知道为什么srand函数的问题
只看楼主
收藏
回复
北西花抚
路人
2
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
为什么上面这个是放在自定义的一个函数里面,他不仅生成的数很规律而且也是1秒一个有很多重复的。
下面这个把他放在主函数里面,只执行一次就生成的函数不仅随机了,而且也不会根据时间戳一秒变一下的规律来1秒1秒的改变随机值了。
明明按理来说,放哪都是一样的啊,为什么差距会这么大
GTA小鸡
吧主
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
生成随机数的流程是:调用srand() -> 循环调用rand()
而不是:循环调用srand() + rand()
随机数是一组确定的序列,srand()使用随机种子决定这个序列的第一个数,rand()使用公式计算这个序列的后续数字。相同的随机种子将会得到完全相同的随机序列。通常以当前的时间戳time(NULL)(单位秒)作为随机种子,因此如果你在循环中执行srand(time(NULL)),那么短时间内将产生相同的随机种子,进而生成完全相同的随机序列。
春梦鸟留痕
麻婆豆腐
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
因为time只能达到s(秒)级精度
登录百度账号
扫二维码下载贴吧客户端
下载贴吧APP
看高清直播、视频!
贴吧页面意见反馈
违规贴吧举报反馈通道
贴吧违规信息处理公示