随机函数rand()与srand()
一、int rand(void);
- 函数所在的头文件是stdlib.h;
- 其内部实现线性同除法,不是真正的随机数。通常rand()%x是指在x范围内取模,返回值0-x;
- 系统默认随机种子是1;
二、void srand(unsigned int seed);
- 函数所在的头文件是stdlib.h;
- srand()用来设置rand()产生随机数时的随机数种子;
- 参数seed必须是个整数,通常可以利用time(0)的返回值或NULL来当做seed;
三、二者联系
rand()和srand()要一起使用,其中srand()用来初始化随机数种子,rand()用来产生随机数。
四、公式
通用公式:a + rand() % n ;其中的a是起始值,n是整数的范围。
1.rand() % (b-a))+ a ——含a不含b;
2.rand() % (b-a+1))+ a ——含a和b;
3.rand() % (b-a))+ a + 1 ——不含a含b;
五、程序实例
#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()%100+1<<"/t";
return 0;
}
随机函数rand()与srand()的更多相关文章
- 随机函数rand()和srand()
C++中随机函数rand()和srand()的用法 一.rand() 函数名: rand 功 能: 随机数发生器 用 法: int rand(void); 所在头文件: ...
- awk之随机函数rand()和srand()
awk之随机函数rand()和srand() 分类: LINUX 文件: abcdefg ...... 现在想要随机抽取5列组成下面的内容,允许重复: cffab ...... awk -F '' ' ...
- 认识随机函数rand()和srand(unsigned int )
rand函数 int rand( void ); 函数名: rand 功 能: 随机数发生器 用 法: int rand(void); 所在头文件: stdlib.h 函数说明 : ...
- awk之随机函数rand()和srand() (转)
转自:http://blog.chinaunix.net/uid-10540984-id-2942041.html 文件: 1234567 abcdefg ...... 现在想要随机抽取5列组成下 ...
- 【转】随机函数的rand、srand用法
from:深海的小鱼儿 地址:http://www.cnblogs.com/xmphoenix/archive/2011/04/07/2008622.html 随机函数的rand.srand用法 一& ...
- rand和srand的用法
首先我们要对rand&srand有个总体的看法:srand初始化随机种子,rand产生随机数,下面将详细说明. rand(产生随机数)表头文件: #include<stdlib.h> ...
- rand()和srand()
C++中rand() 函数的用法 1.rand()不需要参数,它会返回一个从0到最大随机数的任意整数,最大随机数的大小通常是固定的一个大整数. 2.如果你要产生0~99这100个整数中的一个随机整数, ...
- rand()与srand()
1.不用srand()的话 两次运行程序产生的随机数序列相同 2.用srand() 两次运行程序产生的随机数则不同 示例程序: #include<iostream> #include< ...
- Mysql 随机函数 rand()
rand() 函数主要有两个用处: 1.是产生随机数, 2.是随机排序(在数据较大的时候会变成性能杀手) 实例: 1.产生一个随机数,默认0~1之间的浮点数 SELECT RAND( ) 2.参数指定 ...
随机推荐
- Spark机器学习基础一
特征工程 对连续值处理 0.binarizer/二值化 from __future__ import print_function from pyspark.sql import SparkSessi ...
- Markdown介绍
如何使用.md文件 本文档为Markdown格式,建议利用Visual Studio Code+ Markdown All in One插件修改.参考链接:基础mdbasic,高级mdextended
- 【python 3】 文件操作
文件操作 一: 只读.读写 # 示例: 1 f = open("E:\人员名单.txt" , encoding="utf-8" , mode="r&q ...
- 无法启动iis express web 服务器
删除项目文件夹下的隐藏文件夹 (.vs)文件
- 小程序之 微信小程序下拉上方出现空白
往下拉页面后上方出现空白区域 用户需要手动划上去才能消失 方法一:"enablePullDownRefresh":false //这个在page.json中配置 整个页面都不能滑 ...
- String 、Stringbuilder和StringBuffer的区别
JAVA平台提供了三个类:String.StringBuilder和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据.这个String类提供了数值不可改变的字符串.而这个S ...
- 虚拟现实外包—动点飞扬软件专门承接VR/AR场景、游戏、项目外包
VR外包AR外包公司(虚拟现实外包公司)承接虚拟现实项目开发(企业.教育.游戏.企业大数据展示等) 有VR/AR.Unity3D项目.游戏外包业务欢迎 联系我们 QQ:372900288 TEL:13 ...
- 注入(injector)
在java开发中有时候我们的一个类需要依赖另外一个类,这种就是依赖关系,创建对象的工作一般由spring容器来完成然后注入给调用者,这种就是依赖注入. Java依赖注入设计原则允许我们移除硬编码依赖和 ...
- java,优先队列的用法
像C++语言一样,java中,也有包装好的优先队列类PriorityQueue. 用法如下(模板代码): 工作安排问题: 问题描述:设有n件工作分配给n个人,将工作i分配给第j个人所需的费用为cij. ...
- springboot 使用Filter
1. 创建 Filter 类,实现 Filter 接口 import javax.servlet.*; import javax.servlet.annotation.WebFilter; impor ...