如何在C语言中产生一定范围的随机数

 我来答
从素芹佘寅
2019-10-06 · TA获得超过3.6万个赞
知道小有建树答主
回答量:1.2万
采纳率:31%
帮助的人:1028万
展开全部
c语言的获取随机数的函数为rand(),
可以获得一个非负整数的随机数。要调用rand需要引用头文件stdlib.h。
要让随机数限定在一个范围,可以采用模除加加法的方式。
要产生随机数r,
其范围为
m<=r<=n,可以使用如下公式:
rand()%(n-m+1)+m
其原理为,对于任意数,
0<=rand()%(n-m+1)<=n-m
于是
0+m<=rand()%(n-m+1)+m<=n-m+m

m<=rand()%(n-m+1)+m<=n
敏夏念锦
2019-09-04 · TA获得超过3.7万个赞
知道大有可为答主
回答量:1.2万
采纳率:30%
帮助的人:1980万
展开全部
#include<stdlib.h>
#include<time.h>
main()
{
srand(time(0));//根据当前时间生成随机数生成器种子
int
randnumber=rand();//生成随机数
int
number_rang=randnumber%16+85;//将随机数限定在[85,100]
}
//生成随机数的原理是:rand()函数总是从0~RAND_MAX【通常的最大值是32767,可以用C++的cout<<RAND_MAX;语句(C的语句大概是printf(...)没试过)得知其值,RAND_MAX是<stdlib.h>中的常量】根据随机数生成器种子(相当于读取指针)的位置读取数。上面程序中第一句是根据当前时间设置读取指针,第二句是读取指针指向的数。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式