| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 7088 人关注过本帖
标题:用rand怎么定义3到10的范围的数字
只看楼主 加入收藏
vs303791832
Rank: 2
来 自:地球
等 级:论坛游民
帖 子:87
专家分:12
注 册:2010-6-23
结帖率:76.92%
收藏
已结贴  问题点数:1 回复次数:7 
用rand怎么定义3到10的范围的数字
用rand怎么定义3到10的范围的数字
搜索更多相关主题的帖子: rand 定义 数字 范围 
2010-08-15 13:22
jack10141
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:陕西西安
等 级:小飞侠
威 望:6
帖 子:706
专家分:2271
注 册:2010-8-10
收藏
得分:0 
random(8)+3  不就可以了么???笨ben

Coding就像一盒巧克力,你永远不会知道你会遇到什么BUG
别跟我说你是不能的,这让我愤怒,因为这侮辱了你的智慧
2010-08-15 13:26
jack10141
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:陕西西安
等 级:小飞侠
威 望:6
帖 子:706
专家分:2271
注 册:2010-8-10
收藏
得分:0 
回复 楼主 vs303791832
或者 rand()%8+3

Coding就像一盒巧克力,你永远不会知道你会遇到什么BUG
别跟我说你是不能的,这让我愤怒,因为这侮辱了你的智慧
2010-08-15 13:27
vs303791832
Rank: 2
来 自:地球
等 级:论坛游民
帖 子:87
专家分:12
注 册:2010-6-23
收藏
得分:0 
为什么是rand()%8+3

小白无敌,哈哈.......我成功了
2010-08-16 07:05
丢了幸福
Rank: 2
等 级:论坛游民
帖 子:44
专家分:10
注 册:2010-7-24
收藏
得分:0 
回复 3楼 jack10141
rand( )%8表示的是0~7之间的数字,我们老师是让我们记住这个求余的。
2010-08-16 15:54
lei351530496
Rank: 2
等 级:论坛游民
帖 子:13
专家分:19
注 册:2010-8-6
收藏
得分:0 
int m=rand()%8+3;
就好了啦
呵呵
2010-08-16 16:13
lizanle521
Rank: 1
等 级:新手上路
帖 子:16
专家分:3
注 册:2010-8-7
收藏
得分:0 
那rand()%10是不是0到9的数啊,那是特定的式子还是有规律的啊?
2010-08-16 20:55
ylx
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2010-8-12
收藏
得分:0 
只用rand()函数可以得到“随机”整数,但没有初始化种子时得到的实际上是一个确定的数列,比如:
rand()%8+3得到的数列为:4 6 9 7 4 6 9······
所以要得到真正意义上的随机整数应该用srand()(也是包含在头文件stdlib.h中的库函数)初始化种子:
long seed=0L;
short Digital=0;
srand(seed);
Digital=rand()%8+3
但即使这样得到的也只是一个固定的数列,只不过和上面的不同而已!!这就看你要求高不高了。一般这样就够用了
如果你想要每次调用rand()时得到很“随机”的随机数,有一个方法很好,但很麻烦:
关键在于让种子每次都改变,这就要调用头文件time.h中的time()函数(返回1970年1月1日算起的秒数)
long seed=0L;
short Digital=0;
seed=time(NULL);
srand((int)seed);
Digital=rand()%8+3
这样可以得到与时间有关的随机指数啦,而时间又一直在变化····
 
2010-08-16 22:40
快速回复:用rand怎么定义3到10的范围的数字
数据加载中...
 
   



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

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