1.C语言如何编程产生随机数
楼主你好!
很高兴回答你的问题!
#include<stdio.h>
#include<windows.h>
#include<time.h>
#include<stdlib.h>
int main()
{
int num;
srand((unsigned)time(NULL));
num = rand()%100+1;
printf("%d\n",num);
return 0;
}
上面的是参数一个1到100之间的随机数的例子!主要用到rand()函数,它能够随机参数一个0到unsigned int的最大值之间的一个随机数,我们可以通过%控制随机数参数的范围!在使用rand()需要调用srand()种子器,不然你每次得到都是同一个数!具体用法可以去网上查查!
希望我的回答对你有帮助!
望采纳!谢谢!
2.C语言中怎样生成随机数
在VC中设计到随机数有两个函数srand() and rand()srand() 的作用是是一个种子,提供每次获得随机数的基数而已,rand()根据种子而产生随机数注意1:srand() 里的值必须是动态变化的,否则得到的随机数就是一个固定数2:其实可以不用写srand() ,只用rand()就可以了,省事,简单,例子如下如果我们想得到一个 0-60的随机数那么可以写成int i;i=rand()%60;就可以了。
当然最好有个统一的标注如下:int i;srand((unsigned)time( NULL ));i=rand()%60;这样就OK了。
3.c语言怎么生成随机数
你好!
完整的代码,红圈处就是从上面100个数字中抽取到的数字:
#include <stdio.h>
#include<stdlib.h>; //生成随机数用
#include<time.h>; //利用时间生成种子
#include<math.h>
int main()
{
int i;
int a[100];
srand( time(NULL) ); //生成种子
for(i=0;i<100;i++)
{
a[i]=rand()%1000+1000; //生成一个小于1000的随机数
//然后加1000,变成 1000 - 2000之间的数
printf("%d ",a[i]); //打印
}
i=rand()%100; //随机抽取其中的一个数
printf("\n抽取到的是:%d\n",a[i]);//打印
return 0;
}
4.C语言抽取随机数怎么编写
C语言中有自己的随机数函数rand()
其原型为
int rand();
功能为获取一个随机整型数。
所在头文件为stdlib.h
抽取10个随机数并输出的程序可以写成
#include<stdio.h>
#include <stdlib.h>
int main()
{
int i;
for(i = 0; i < 10; i ++)
printf("%d\n", rand());
return 0;
}
在应用中,需要的随机数往往是一个范围,比如要随机生成一组合法的整型分数的时候,实际上是需要生成一组[0,100]的随机整数。要达到这样的目的,可以通过取余运算(模除运算)来实现。
对于a%b的值,其结果范围在[0,b-1]之间。依照这个原理,如果要得到范围在[a,b]的随机整数,可以先求得[0,b-a]范围的随机数,再在结果上加a即可。
也就是
rand()%(b-a+1) + a
于是在之前代码的基础上,抽取10个值在[0,100]范围内的随机数程序可以写成
#include<stdio.h>
#include <stdlib.h>
int main()
{
int i;
for(i = 0; i < 10; i ++)
printf("%d\n", rand()%101);//这里增加了模除运算,由于最小值就是0,所以不需要加法了。
return 0;
}
值得注意的一点是,C语言提供的rand函数是伪随机数,如果不做其它处理,那么每次运行程序获取到的随机数序列是固定的。为了解决这个问题,C语言还定义了srand这个库函数,用来设定一个随机数种子,从而得到一个不确定的随机初始值。
srand要求有一个int型的参数,这个参数比较常见的做法是用time(NULL)来获取当前微秒数来充当。
于是一个完整的设定随机数种子的操作为
srand(time(NULL));
其中time函数需要引入time.h来声明。
srand函数需要在第一次调用rand前调用,这样获取[0,100]间10个随机整数并输出的程序就最终被修改为
#include<stdio.h>
#include <stdlib.h>
#include <time.h>; //增加time函数的头文件
int main()
{
int i;
srand(time(NULL));//设置随机数种子,只需要调用一次即可。
for(i = 0; i < 10; i ++)
printf("%d\n", rand()%101);
return 0;
}
5.怎么用C语言生成随机数
原发布者:gw_210
用c语言产生随机数rand() 在C语言中,rand()函数可以用来产生随机数,但是这不是真真意义上的随机数,是一个伪随机数,是根据一个数,我们可以称它为种子,为基准以某个递推公式推算出来的一系数,当这系列数很大的时候,就符合正态公布,从而相当于产生了随机数,但这不是真正的随机数,当计算机正常开机后,这个种子的值是定了的,除非你破坏了系统,为了改变这个种子的值,C提供了srand()函数,它的原形是voidsrand(inta)。可能大家都知道C语言中的随机函数random,可是random函数并不是ANSIC标准,所以说,random函数不能在gcc,vc等编译器下编译通过。rand()会返回一随机数值,范围在0至RAND_MAX间。返回0至RAND_MAX之间的随机数值,RAND_MAX定义在stdlib.h,(其值至少为32767)我运算的结果是一个不定的数,要看你定义的变量类型,int整形的话就是32767。在调用此函数产生随机数前,必须先利用srand()设好随机数种子,如果未设随机数种子,rand()在调用时会自动设随机数种子为1。一般用for语句来设置种子的个数。具体见下面的例子。 一如何产生不可预见的随机序列呢利用srand((unsignedint)(time(NULL))是一种方法,因为每一次运行程序的时间是不同的。 在C语言里所提供的随机数发生器的用法:现在的C编译器都提供了一个基于ANSI标准的伪随机数发生器函数,用来生成随机数。它们就是rand()和srand()函数。这二个函数的工作过程如下:1)首先给srand()提供
6.c语言中随机数怎样写
C语言函数名rand()
简介
功 能::伪随机数发生器 所属库:stdlib.h
用 法: 需要先调用srand初始化,一般用当前日历时间初始化随机数种子,这样每次执行代码都可以产生不同的随机数。
函数原型:int rand(void); 相关函数:srand、time、GetTickCount
程序例
1: #include "stdio.h"
#include "stdlib.h"
int main(void) {
int i;
printf("Ten random numbers from 0 to 99\n\n");
for(i=0; iprintf("%d\n", rand() % 100);
return 0; }
例1程序在每次运行时都会生成相同的十个伪随机数,如要每次生成的随机数不同应结合srand函数和time函数。
///////////////////
int i,a;
for(i=0;i{
a=rand()%9;
printf("%d",a);
}
7.c语言生成随机数
将srand( (unsigned)time( NULL ) );置于random函数之外,比方说置于main函数中由于时间基本是一样的,所以得到的数字也相同 例如#include
8.如何制作随机数 C语言
首先使用srand(unsigned int)函数设置种子,然后使用rand()返回一个随机数。
使用这两个函数时需要包含头文件 #include
只要种子不同rand()函数就会产生不同的随机数序列。srand()称为随机数生成器的初始化器; 示例代码: #include
9.C语言中取随机数的函数
原发布者:趁光明
C语言中产生随机数的方法引例:产生10个[100-200]区间内的随机整数。#include#include//rand函数的头文件#include//时间函数的头文件intmain(){inti;//循环变量srand((unsigned)time(NULL));//产生随机数的起始数据(以时间为种子)for(i=0;i<10;i++)//printf("%d\n",rand());//产生[0,0x7fff)即[0,32767)以内的随机整数//printf("%d\n",rand()%100);//产生0-99的随机整数printf("%d\n",rand()%(200-100+1)+100);//产生[100,200]内的随机整数return0;}在C语言中产生随机数需要以下几个函数的配合使用。(1)rand函数——产生伪随机数原型:intrand(void)头文件:stdlib.h功能:产生从0到RAND_MAX之间的随机数。RAND_MAX的值通常是0x7fff(十六进制数7FFF,也就是十进制数32767)。例:#include#includeintmain(){intk;k=rand();printf("%d\n",k);return0;}编译运行,发现每次运行程序产生的随机数都是一样的。计算机中产生随机数,实际是采用一个固定的数作为“种子”,在一个给定的复杂算法中计算结果,所以叫“伪随机数”。C语言中由于采用固定的序列作为种子,所以每次执行所取的是同一个数。为上面的例子增加一个循环结构:#include#includeintmain(){intk,i;for(i=0;i<10;i++){
转载请注明出处育才学习网 » 用c语言怎么写随机数