c++如何产生随机数?要包含什么头文件吗?

比如说想在0到100之间随机产生数,怎么实现?... 比如说想在0到100之间随机产生数,怎么实现? 展开
 我来答
物理公司的
2014-10-08 · TA获得超过5695个赞
知道大有可为答主
回答量:6105
采纳率:86%
帮助的人:1364万
展开全部
#include <iostream> 
#include <stdlib.h
#include <time.h> 

using namespace std; 

int main() 

        srand((unsigned)time(NULL)); 
        for(int i = 0; i < 10;i++ ) 
                cout << rand() << '\t'; 
        cout << endl; 
        return 0; 
}

 虽然是随机数,但不会超过30000,所以

要取得[a,b)的随机整数,使用(rand() % (b-a))+ a;
要取得[a,b]的随机整数,使用(rand() % (b-a+1))+ a;
要取得(a,b]的随机整数,使用(rand() % (b-a))+ a + 1;
通用公式:a + rand() % n;其中的a是起始值,n是整数的范围。
要取得a到b之间的随机整数,另一种表示:a + (int)b * rand() / (RAND_MAX + 1)。
要取得0~1之间的浮点数,可以使用rand() / double(RAND_MAX)。

追问
不是啊,你这个随机数是没有范围的,我要的是在某一个范围内产生随机数。。。
追答
你没看错,我是后来加的
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式