随机函数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)); }这样两次运行的结果就会不一样了!!

阿里云年中活动最后一周 - ECS共享型N4 2G1M年付59元

以前我们在参与到云服务商促销活动的时候周期基本是一周时间,而如今我们会看到无论是云服务商还是电商活动基本上周期都要有超过一个月,所以我们有一些网友习惯在活动结束之前看看商家是不是有最后的促销活动吸引力的,比如有看到阿里云年中活动最后一周,如果我们有需要云服务器的可以看看。在前面的文章中(阿里云新人福利选择共享性N4云服务器年79.86元且送2月数据库),(LAOZUO.ORG)有提到阿里云今年的云...

CloudServer:$4/月KVM-2GB/50GB/5TB/三个数据中心

CloudServer是一家新的VPS主机商,成立了差不多9个月吧,提供基于KVM架构的VPS主机,支持Linux或者Windows操作系统,数据中心在美国纽约、洛杉矶和芝加哥机房,都是ColoCrossing的机器。目前商家在LEB提供了几款特价套餐,最低月付4美元(或者$23.88/年),购买更高级别套餐还能三个月费用使用6个月,等于前半年五折了。下面列出几款特别套餐配置信息。CPU:1cor...

华为云年中聚惠618活动,新用户专区,云服务器低至88元/年,3年仅580.98元,热销抢购中,最后2天!

华为云怎么样?华为云用在线的方式将华为30多年在ICT基础设施领域的技术积累和产品解决方案开放给客户,致力于提供稳定可靠、安全可信、可持续创新的云服务,做智能世界的“黑土地”,推进实现“用得起、用得好、用得放心”的普惠AI。华为云作为底座,为华为全栈全场景AI战略提供强大的算力平台和更易用的开发平台。本次年终聚惠618活动相当给力,1核2G内存1m云耀云服务器仅88元/年起,送主机安全基础版套餐,...

随机函数为你推荐
按键精灵教程按键精灵要怎么学?eofexceptionjava出现异常Exception in thread "main" java.io.EOFExceptiona8处理器AMD A8的CPU怎么样?资源优化配置自己的资源如何优化配置。比如时间,金钱...burndown如何画burndown chart开房数据库ODBC数据库是什么呢?乐辞自驱力读后感相册网怎样才能把我的照片传到网上去??淘宝推广网站谁有好的淘宝推广网站介绍下哦!或推广技巧!gps简介GPS技术 简介
中文域名申请 花生壳免费域名申请 万网域名解析 lnmp justhost 私服服务器 php主机 谷歌香港 国外空间服务商 名片模板psd 线路工具 ibox官网 云全民 毫秒英文 qq对话框 美国堪萨斯 umax120 新世界服务器 安徽双线服务器 申请网站 更多