rand函数的用法
2016-07-19 14:27
295 查看
已解决
rand函数的用法
![](http://img.baidu.com/img/iknow/icn_point.gif)
悬赏分:20 - 解决时间:2008-4-3 23:20用rand函数产生0到9的随机数:
1,int(10*rand()/(RAND_MAX+1.0))
2,10*rand()/RAND_MAX
3,rand()%10
哪种效果更好,第一种是在linux的manu中推荐使用的,文中说不推荐使用第三种,这个我能明白,因为产生随机数的高位比低位更随机,但我感觉第二种也行,为什么非要在RAND_MAX+1.0呢??请高手指点。如果回答的好追加。问题补充:int i=0;
while(i++<100)
cout<<(rand()*10/RAND_MAX)<<" ";
我用了这样一个语句,在100数种,没有发现输出10的情况啊提问者: zhqyzhqychn - 助理
三级 最佳答案rand()函数返回最大值就是RAND_MAX 所以假设rand()函数返回最大值的时候 10*rand()/RAND_MAX = 10, 就不是0到9 了0回答者: feex - 秀才
二级
![](http://img.baidu.com/img/iknow/images/offline.gif)
4-3 16:13我来评论>>提问者对于答案的评价:原以为rand最大产生RAND_MAX-1;做了很多次测试都没有RAND_MAX,今天晚上写程序时才发现可以产生谢谢了 相关内容
• 再问关于计算机RAND函数的使用方法 • rand函数的用法 • 请问turbo
c中rand()函数的用法?? • 急急急急急急急急 matlab中rand函数的具体用法 • C里面的rand函数具体介绍,用法? 更多关于rand()/(RAND_MAX+1.0)的问题>> 查看同主题问题:rand
函数 函数 用法 其他回答 共 3 条c不是有random函数么?
直接random(10);不就行了?回答者: chichujn - 都司
七级
![](http://img.baidu.com/img/iknow/images/offline.gif)
4-3 16:15 rand()
函数有一点不合适,
每次运行程序出现的随机数次序都一样。
用int random(int max) 好些回答者: ryw12403 - 举人
四级
![](http://img.baidu.com/img/iknow/images/offline.gif)
4-3 17:17 如feex所言,如果rand()返回的值刚好是RAND_MAX时,将导致第2个的结果为10,RAND_MAX+1.0是为了使rand()得到的数永远比分母小,这里加的是1.0,为了避免int型溢出为0的情况,1.0的话就
隐式提升为double了,不存在溢出的情况.
其实,我会选择第3种,因为一看就明白,嘿嘿...回答者: ggdmdf - 江湖少侠
七级
![](http://img.baidu.com/img/iknow/images/offline.gif)
4-3 17:35
收藏于 2009-05-03
rand函数的用法
![](http://img.baidu.com/img/iknow/icn_point.gif)
悬赏分:20 - 解决时间:2008-4-3 23:20用rand函数产生0到9的随机数:
1,int(10*rand()/(RAND_MAX+1.0))
2,10*rand()/RAND_MAX
3,rand()%10
哪种效果更好,第一种是在linux的manu中推荐使用的,文中说不推荐使用第三种,这个我能明白,因为产生随机数的高位比低位更随机,但我感觉第二种也行,为什么非要在RAND_MAX+1.0呢??请高手指点。如果回答的好追加。问题补充:int i=0;
while(i++<100)
cout<<(rand()*10/RAND_MAX)<<" ";
我用了这样一个语句,在100数种,没有发现输出10的情况啊提问者: zhqyzhqychn - 助理
三级 最佳答案rand()函数返回最大值就是RAND_MAX 所以假设rand()函数返回最大值的时候 10*rand()/RAND_MAX = 10, 就不是0到9 了0回答者: feex - 秀才
二级
![](http://img.baidu.com/img/iknow/images/offline.gif)
4-3 16:13我来评论>>提问者对于答案的评价:原以为rand最大产生RAND_MAX-1;做了很多次测试都没有RAND_MAX,今天晚上写程序时才发现可以产生谢谢了 相关内容
• 再问关于计算机RAND函数的使用方法 • rand函数的用法 • 请问turbo
c中rand()函数的用法?? • 急急急急急急急急 matlab中rand函数的具体用法 • C里面的rand函数具体介绍,用法? 更多关于rand()/(RAND_MAX+1.0)的问题>> 查看同主题问题:rand
函数 函数 用法 其他回答 共 3 条c不是有random函数么?
直接random(10);不就行了?回答者: chichujn - 都司
七级
![](http://img.baidu.com/img/iknow/images/offline.gif)
4-3 16:15 rand()
函数有一点不合适,
每次运行程序出现的随机数次序都一样。
用int random(int max) 好些回答者: ryw12403 - 举人
四级
![](http://img.baidu.com/img/iknow/images/offline.gif)
4-3 17:17 如feex所言,如果rand()返回的值刚好是RAND_MAX时,将导致第2个的结果为10,RAND_MAX+1.0是为了使rand()得到的数永远比分母小,这里加的是1.0,为了避免int型溢出为0的情况,1.0的话就
隐式提升为double了,不存在溢出的情况.
其实,我会选择第3种,因为一看就明白,嘿嘿...回答者: ggdmdf - 江湖少侠
七级
![](http://img.baidu.com/img/iknow/images/offline.gif)
4-3 17:35
收藏于 2009-05-03
相关文章推荐
- 如何组织构建多文件 C 语言程序(二)
- 如何写好 C main 函数
- Mootools 1.2教程 函数
- autoit InputBox 函数
- 文件遍历排序函数
- 关于C#中排序函数的总结
- Oracle 函数大全[字符串函数,数学函数,日期函数]第1/4页
- ASP下经常用的字符串等函数参考资料
- PostgreSQL教程(五):函数和操作符详解(1)
- DOS批处理 函数定义与用法
- asp Chr 函数 数字转字母的方法
- Lua中的函数精讲笔记
- Lua中的闭合函数、非全局函数与函数的尾调用详解
- Lua中调用C++函数示例
- Lua和C语言的交互详解
- Lua实现split函数
- Lua常用时间函数使用实例
- Lua函数与字符串处理简明总结
- Lua学习笔记之表和函数
- Lua中实现sleep函数功能的4种方法