随机函数C语言中获得随机数的方法

随机函数  时间:2021-09-03  阅读:()

怎样用c语言产生一个0到100的随机数

具体代码如下: #include #include #include //用到了time函数 int main() { int i,number; srand((unsigned) time(null)); //用时间做种,每次产生随机数不一样 for (i=0; i<50; i++) { number = rand() % 101; //产生0-100的随机数 printf("%d ", number); } return 0; } 有以下几种情况: (1) 如果只要产生随机数而不需要设定范围的话,你只要用rand()就可以了:rand()会返回一随机数值, 范围在0至rand_max 间。

rand_max定义在stdlib.h, 其值为2147483647。

(2) 如果你要随机生成一个在一定范围的数,你可以在宏定义中定义一个random(int number)函数,然后在main()里面直接调用random()函数: 例如: rand()%100是产生0-99的随机数。

rand函数的用法

这个我用过,我知道: rand()是一个可以生成随机数的函数随机数,函数返回的随机数在0-RAND_MAX(32767)之间; rand()%100结果是随机数除以100后所得的余数,即限定随机的范围是在0~99之间; 使用rand()函数需添加头文件:#include <stdlib.h> 你的二维数组可以可提供这样一种方法实现: #include "stdafx.h" #include "stdlib.h" int main(int argc, char* argv[]) { int Array[5][5]; int i,j; for(i=0;i<=4;i++) for(j=0;j<=4;j++) Array[i][j] = rand()%900+100; for(i=0;i<=4;i++){ //测试输出 for(j=0;j<=4;j++) printf("%d ",Array[i][j]); printf(" "); } return 0; }

C语言中获得随机数的方法

C语言/C++怎样产生随机数:这里要用到的是rand()函数, srand()函数,C语言/C++里没有自带的random(int number)函数。

(1) 如果你只要产生随机数而不需要设定范围的话,你只要用rand()就可以了:rand()会返回一随机数值, 范围在0至RAND_MAX 间。

RAND_MAX定义在stdlib.h, 其值为2147483647。

例如:#include<stdio.h> #include<stdlib.h> void main() { for(int i=0;i<10;i+) printf("%d ",rand()); } (2) 如果你要随机生成一个在一定范围的数,你可以在宏定义中定义一个random(int number)函数,然后在main()里面直接调用random()函数:例如:随机生成10个0~100的数: #include<stdio.h> #include<stdlib.h> #define random(x) (rand()%x) void main() { for(int x=0;x<10;x++) printf("%d ",random(100)); } (3)但是上面两个例子所生成的随机数都只能是一次性的,如果你第二次运行的时候输出结果仍和第一次一样。

这与srand()函数有关。

srand()用来设置rand()产生随机数时的随机数种子。

在调用rand()函数产生随机数前,必须先利用srand()设好随机数种子(seed), 如果未设随机数种子, rand()在调用时会自动设随机数种子为1。

上面的两个例子就是因为没有设置随机数种子,每次随机数种子都自动设成相同值1 ,进而导致rand()所产生的随机数值都一样。

srand()函数定义 : void srand (unsigned int seed); 通常可以利用geypid()或time(0)的返回值来当做seed 如果你用time(0)的话,要加入头文件#include<time.h>例如: #include<stdio.h> #include<stdlib.h> #include<time.h> #define random(x) (rand()%x) void main() { srand((int)time(0)); for(int x=0;x<10;x++) printf("%d ",random(100)); }这样两次运行的结果就会不一样了!!

湖北22元/月(昔日数据)云服务器,国内湖北十堰云服务器,首月6折

昔日数据怎么样?昔日数据新上了湖北十堰云服务器,湖北十堰市IDC数据中心 母鸡采用e5 2651v2 SSD MLC企业硬盘 rdid5阵列为数据护航 100G高防 超出防御峰值空路由2小时 不限制流量。目前,国内湖北十堰云服务器,首月6折火热销售限量30台价格低至22元/月。(注意:之前有个xrhost.cn也叫昔日数据,已经打不开了,一看网站LOGO和名称为同一家,有一定风险,所以尽量不要选择...

hostio荷兰10Gbps带宽,10Gbps带宽,€5/月,最低配2G内存+2核+5T流量

成立于2006年的荷兰Access2.IT Group B.V.(可查:VAT: NL853006404B01,CoC: 58365400) 一直运作着主机周边的业务,当前正在对荷兰的高性能AMD平台的VPS进行5折优惠,所有VPS直接砍一半。自有AS208258,vps母鸡配置为Supermicro 1024US-TRT 1U,2*AMD Epyc 7452(64核128线程),16条32G D...

飞讯云E5-2678V3 64GB,湖北十堰100G高防物理机330元/月

飞讯云官网“飞讯云”是湖北飞讯网络有限公司旗下的云计算服务品牌,专注为个人开发者用户、中小型、大型企业用户提供一站式核心网络云端部署服务,促使用户云端部署化简为零,轻松快捷运用云计算。飞讯云是国内为数不多具有ISP/IDC双资质的专业云计算服务商,同时持有系统软件著作权证书、CNNIC地址分配联盟成员证书,通过了ISO27001信息安全管理体系国际认证、ISO9001质量保证体系国际认证。 《中华...

随机函数为你推荐
推信怎么样才可以精准引流?阿里校园招聘阿里巴巴集团校园招聘吗?不对外招聘xhtmlHTML4,HTML5,XHTML 之间有什么区别eofexceptionjava出现异常Exception in thread "main" java.io.EOFExceptionnvidia官方网站N卡的官网是什么?资源优化配置什么是优化产业结构,资源优化配置??什么是光纤什么是光纤网络招行信用卡还款招商信用卡怎么还款呢4g上网卡4G手机上网卡和4G网络是什么意思?售后软件vivo售后的软件可以删吗
花生壳免费域名 42u标准机柜尺寸 sub-process 天猫双十一抢红包 魔兽世界台湾服务器 免费ftp空间申请 中国电信测网速 cn3 vip购优惠 免费cdn web服务器是什么 云营销系统 摩尔庄园注册 中国联通宽带测速 国外代理服务器 hostease qq空间打开很慢 ping值 卡巴斯基免费版下载 ssd 更多