2 xiaojin111 xiaojin111 于 2013.12.04 15:51 提问

请教c语言中生成随机数的范围

unsigned int i, j;

srand((unsigned int)time((time_t *)NULL));

i = (unsigned int) (31329.0 * rand() / (RAND_MAX + 1.0));
j = (unsigned int) (30082.0 * rand() / (RAND_MAX + 1.0));

请问一下产生的i,j的范围是多少?

1个回答

nitonggui
nitonggui   2013.12.04 18:05
已采纳

i的范围:0~31329
j的范围:0~30082
解释:
srand()就是给rand()提供种子seed,如果每次用同样的seed,那么rand()每次产生的随机数是一样的。因此大多数情况下,使用系统时间来做seed。这样种子是一个不固定的数,产生的随机数会每次不一样。
rand()产生一个伪随机数,范围为0~RAND_MAX,RAND_MAX默认为32767.
因此根据以上算术表达式得出以上结论。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
c语言中生成某一范围的随机数
C语言中用rand()函数产生20-90的随机整数 20-90共有71个数字,所以是rand()%71+20 ; 用rand()生成-20-20的随机数 -20-20共有41个数字,所以是rand()%41-20; 需要注意的是,在运行以上代码之前最好设定一下: srand(time(NULL));//用系统当前时间设置rand()随机序列种子,保证每次运行随机序列不一样
用C语言生成指定范围内指定个数的随机数(代码)
#include <stdio.h> #include <stdlib.h> #include <time.h> void Random(int min, int max, int n) { int i; srand((unsigned)time(NULL)); for (i = 0; i < n; i++) { int t = ((max ...
C语言如何生成规定范围内的随机数
如何生成规定范围内的随机数c语言/c++ 编译环境vs2013#include<stdio.h> #include<time.h> #include<stdlib.h> #define max 100 //随机生成最大的数为100 #define min 50 //随机生成最小的数为50int main() { int num; srand(time(0)); n
在C语言中如何产生随机数
简单的产生0~100随机数的代码如下: #include"stdio.h" #include"time.h"//在这两个地方使用尖括号总是显示不出来括号中的内容,所以用的双引号 void main() { int i=0,j=0; int p; srand(time(NULL));//产生时间种子 p=rand()%100+1;//生成随机数 printf("%d\t",p)
c语言如何生成随机数
如何产生随机数c语言 编译环境vs2013,代码如下#include<stdio.h> #include<stdlib.h> #include<time.h>int main() { int num = 0; srand(time(NULL)); //系统时间作为随机种子 num = rand(); //rand()函数产生随机数 printf("生成的
如何用c语言产生一定范围内的随机数?
srand((int)time(NULL));设定随机数种子 rand()%100;产生0-99的随机数。高级点的,假如要产生16-59之间的数,你可以这样写:rand()%44+16(这里44由59-16+1得到)。其他情况如法炮制! 下面是搜回来的: 问题1: 怎样获得一个真正的随机数?要知道,rand()是不能产生真正的随机数的!即使不能产生真正的随机数,也要大概接近呀!而rand()好
C语言中的随机数 srand ( ) 和 rand ( )
在C语言中,生成一个随机数,一般利用两个函数,即void srand ( unsigned int seed ) 和 int rand ( void )。其中,srand函数用于生成一个随机数种子,种子的值等于参数seed,这个参数由我们指定一个数、式子或者函数值,rand函数根据这个随机数种子进行运算生成一个[ 0 , RAND_MAX (int或 unsigned int最大值) ]范围内
C语言如何产生一个随机数,rand函数的使用
C语言中用于产生随机数的函数是rand(),下面我用程序说明一下如何在C语言下产生随机数。 示例代码如下: #include #include #include int main(int argc, char **argv) { int a; a = rand()%101; printf("a = %d\n", a); return 0; }
C语言,如何取一组固定范围的随机数-xyphf
首先我们要知道srand()和rand()函数;#include <stdio.h> #include <stdlib.h> #include <time.h> //需要导入一个时间头文件int main() { //用时间做种子,每次产生随机数不一样 srand(unsigned time(NULL)); //rand() 取值范围: 0-32767 printf(
c语言中如何产生随即数
可能大家都知道C语言中的随机函数random,可是random函数并不是ANSI C标准,所以说,random函数不能在gcc,vc等编译器下编译通过。那么怎么实现C语言中的随机函数呢? 除了random函数,还有一个rand函数,也是一个随机函数,可以产生从0到rand_max的随机数。 #i nclude #i nclude int main() { int k; k=rand(); pr